Uploading files to a web server is not fool proof and nothing I could do would make it fool proof, it depends on server configuration, how much load is the server under, how good is the connection and other factors such as if the file is in use or locked by a process. If an error happens during an upload attempt it should be logged and you may be able to find clues what caused the problem and how to solve it
If you have trouble uploading a master page then use ftp or upload it as a new skin not one in use and then change to the new skin. If you're having troubles with other files it can be caused by the size of the files, see supporting large file uploads.
Hope that helps,