Кодировка для HTTP-ответов, для которых в заголовке ответа не указан заголовок Content-encoding берется из настройки JMeter. ...default encoding... Она по умолчанию тоже не UTF-8, ее тоже можно поменять на UTF-8
Короче, file.encoding мою проблему решил полностью, если не считать того, что теперь я не понимаю, как можно получить через bytes и через обращение к строке разные данные.