Uploaded file's size is strongly limited by web browser's design. Many browsers(include flash) can just handle signed numbers as large as 2GB (-2147483648 to 2147483648). So when you want to upload a 2GB+ file, the file size in the HTTP head will become a negative number, then the uploading will be failed.
For solving this problem, you can try this web client plugin: viewtopic.php?f=13&t=760
