Do You use SSL? Does it work on http?
I had something similar, I solved this by using LiveUpload. Here is the topic Large file uploads with ssl on Phoenix 1.6
One parameter really important is the chunk_size. Incrementing the value works well for large files (around 4 Gb) and I could get a real speed increase. (more than double the speed)