Забыл написать, вы подтолкнули меня к решению. Я включал неправильный режим - enterRemotePassiveMode() вместо enterLocalPassiveMode(). И как оказалось, нужно было приводить файл в бинарное представление (setFileType(FTP.BINARY_FILE_TYPE)) до перехода в LocalPassiveMode(). Спасибо!