Ok... this is going to sound really strange... but I assure you it's true.
I had an Actiontec 54mbs DSL Gateway modem, which worked fine for a few days before it started acting strange. In order to connect, I had to plug a phone into the modem (which you can do to have the modem act as a filter) and make a call for it to train, and once I hung up, the modem would disconnect.
Yesterday I went out and bought an Actiontec DSL Modem (similar model, but without wireless) which worked fine...for about an hour. After that it would begin losing its train. I plugged a phone into it and made a call, and like magic, the modem trained. Oddly enough, unlike the other modem, it would not immediately disconnect once I hung up, but it will after about 10-15 minutes.
Any suggestions?