I do not believe this to be a network issue.
Much more likely to be a memory issue. With only 2GB of RAM server and running RSYNC on a 5G file, I'd suspect the server first. You can monitor the server memory hopefully as you are running it.
The client side could have issues too. I gave up on RSYNC for Windows for example because it always crashed on large files no matter how much RAM you had.
I'd have to question whether rsync was the right tool for the job on such large files. It depends on the file of course but unless any updates are amenable to rsync's diff engine, there is probably no point. A straight transfer may be better. You might even use something like zip or tar to split the file so you could send it in parts and reassemble at the other end.