Honestly, I've never seen a cable/dsl modem that acts as a DHCP server or NAT translator. They normally are only connected to one computer or router and just pass the IP/DNS info to the computer or router. All routers I have ever dealt with DO act as DHCP servers and usually provide NAT.
The trouble he is seeing sounds most like a hardware problem associated with wiring or the switch portion of the router. I would try something like:
- traceroute yahoo.com though I don't think it will be definitive,
- connect the computer directly to the cable/dsl modem preferably
- If the problem goes away, replace the router,
- if it does not, try changing the ethernet cable
- if it still does not go away, we look to the computer and its hardware
- computer back to the router, change the ethernet card and try again
- if you still have a problem, search log files (dmesg, etc)
- left for last because one computer has more problems than others, but you could also try logging into the router and the modem to look at log files. Maybe one computer has more problems because of when it is used rather than the fact of it being that computer.