First of all, this is bizarre behavior and doesn't sound kosher to me. Obviously, in a download data is flowing and the pipe to Juno is obviously not idle. This sort of thing happens with ftp sometimes, because there's a control connection and a data connection. Sometimes the control connection can time out even though the data connection is busy.
In such cases, and presumably yours too, the answer is tcp keepalives. Here's what you do: run Applications/Utilites/Terminal. Inside Terminal, type:
sudo sysctl -w net.inet.tcp.always_keepalive=1
Enter your password at the prompt. There is one more variable, the keepalive interval, but it's probably set at 20 minutes, so you should be cool.
sysctl net.key.natt
keepaliveinterval
should show you. I don't think you need to modify it, because it sounds like you have an hour.
I totally agree with sig. To say "Tech support says that's the way their system is & they can't do anything about it" is total bs. I'd find another ISP.
Powerbook G4, iMac (Intel), and tons of hardware sitting in the closet Mac OS X (10.4.9)