Can't seem to upload large files with php Guzzle
Have you tried this?
"file" => "@" . $file->getRealPath()
I found that this guy had similar problems - http://alex-panshin.me/blog/file-upload-with-guzzle/
I think he was receiving a 413 (Request Too Large) - What HTTP error response (if any) are you getting?
See this for more information https://craftcms.stackexchange.com/a/2330
If all else fails try and capture the headers set when using curl and those set when using Guzzle and figure out if there's a difference.