Try a new router? I had a linksys switch that exhibited that exact behavior... It's strange that your DSL modem is what has to be rebooted though. Does a reboot of the router fix the speed problem temporarily?

Matthew