I suspect the problem is bandwidth overloading.
I bet you are using FTP protocol to download. The FTP protocol is very susceptable to timeout.
I would recommend that you start a ping to the download site at the same time as you download. I bet the ping time varies quite a bit. Be sure to use ping -t if you are using windows ping. That will keep the ping going continously. You can also use tracert to try to determine where the bottleneck is in the route to the download site.
If indeed that is the problem, there is not much you can do about it but contact your provider, tell them what you have found, and complain.