Why does my Internet slow to a crawl unless I reboot my router every few days?
I'd say that the problem is bad memory management in router firmware. Basically whenever router needs to have lots of connections open, it uses up its RAM, which is normal. When a connection is closed, that RAM should be freed up. It looks like in your case it isn't. As router has less and less RAM available, it becomes slower and slower and in the end you have to reboot it. When it is rebooted, contents of the memory are cleared and you have fresh memory to use.
If that's the case, then there's very little you can do. Your router may be supported by third party firmware like DD-WRT or OpenWRT (where's the rest of its name? I can't tell without it) so you could try installing one of then. Otherwise, you could hope for new version of official firmware which could fix the problem.
To check if I'm right, try opening lots of windows and tabs in your browser and go to as many websites as you can on as many computers as you can. Also, you could try finding a hot torrent and download it. Bittorrent will usually place heavy load on router and if the connection closing problem is there, it will occur quickly.
I had a similar problem on a Netgear FVG318 router and solved it by getting a router which supports OpenWRT. I haven't had any problems since then.
In situations like this I love to take a cheap garden timer from Home Depot/Any Hardware store and set it to reboot the router on a daily basis in a time when theres generally little to no usage.