tl/dr version: set connection limits in your FTP client to "1".
This may be old news, but I couldn't easily find a solution in the community forums. I tried to chat with GoDaddy about this problem, but I've been my head against that wall enough to know better.
So, here's the deal: whenever I tried uploading files to our WordPress site via FTP, I would eventually get a timeout, the upload would fail, and I would get locked out for five minutes or so.
The ONLY solution that has worked for me is to limit the number of server connections to "1" in my FTP client. I use Transmit and included a screenshot below. FileZilla and other FTP clients have this option too, I'm sure.
You can probably ignore all the other settings. The important one in this case was limiting the number of connections.