I had the same problems.

Always dropping out etc etc.
I run a Motorola SB5100 modem and a Netgear WGR614 router
I chased it down that I had both the router and the modem set to be the "DHCP server" for memory.
I shut down the option of being the DHCP server on the modem and all has worked beautifully ever since.