I get to fix a lot of modems at work, hardware faults (Sky decoders)
Check to see if it has a relay in it.
They are small, about 18mm long and 5 or 6 mm high and wide. They can get sticky, sometimes giving them a tap will dislodge them, probably not for long though. Actually looking at a few modems here they often have larger relays of diferant dimensions. Some of our modems don't use relays at all, just transistors controlled with optocouplers. These don't seem to be prone to this sort of failure. ie, if they do fail they don't work at all.
I've replaced modem relays in the past. It's a fiddly job. These days everybody is moving to broadband and there's a fairly good supply of cheap second hand modems, so I'll generally just throw a faulty modem away and find a replacement. Not very green of me, I guess :)