Попробуйте использовать FormData вместо чтения файла в виде двоичной строки и вручную создайте запрос multipart / form-data. См. Мой ответ здесь: HTML5 File API readAsBinaryString читает файлы как намного больше, отличные от файлов на диске
FormData