For most Cable connections, it is very normal that they close down on a certain amount of inactivitiy. The cable modems behave quite similar to ISDN dialup modems, in that they are set to dialup on demand.
Most cable operators don't have enough free IP numbers to cover all their customers, so the ones they have must be shared among the customers, and releasing the link upon inactivity is one way of dealing with that.
The problem with this setup, of course, is that you run the risk of getting a 'busy' signal on your cable modem, when the available IP numbers have run out.
Another reason might be your own PC's power management, but I cannot say that for sure until you specify what those 20 minutes of inactivity mean. If it means you are doing absolutely nothing with your PC, then power management may indeed kick in, and especially on older PC's this can cause problems with USB and ethernet equipment. They don't wake up very well, resulting in a loss of connection, and a need to reboot to regain normal operations.
Thirdly, the overall speed. The speed reduction is probably caused by your cable modem software, but, again, I cannot say that for certain until you specify what exactly got installed when you installed your cable modem.
I do know the procedure with one of our larger cable operators in the Netherlands. Even if you purchase the ethernet modem, they still require you to install custom made dialup software. That software installs a communications layer on your PC, which takes care of connect/disconnect (the first point I mentioned), and reconfigures your PC to get an 169.x.x.x IP number, instead of the normal 10.x.x.x or 192.168.x.x ones.
Well, to make a long story short. I installed a run-of-the-mill cable router on by boss's cable connection, and programmed it for PPPoE. Now the link does not disconnect anymore (I set it up as always-on), and the extra software layer is no longer needed on the PC's.
Jan Peter