Have you checked your local connection? Telephone (and other) cables and especially connections can deteriorate. If you can do it without much trouble, take your dsl modem and a laptop or netbook to the box where you are connected to the telephone company cable. If you look inside you should find a modular socket, with a jack in it connecting your building wiring. Plug a short cable into this, with the other end in your modem. Obviously, you might need an extension cord to connect power. Then plug an ethernet cable to connect the laptop or router. Take enough of your home network there to connect a pc without changing modem setup. If service is just as bad, you know you need to report this to Earthlink and eventually get the local telco involved. If service is better, you need to find which part of your cabling needs replace.
I just went through this to an extent with a degraded connection. Among my findings:
1. routing the phone cable through a ups was enough to give me occasional dropouts
2. the cable from the outside box to wall socket where I plugged the modem had deteriorated enough to degrade connection quality.
I replaced my local cable with Cat4E cable (you can find it rated for outdoors at Lowes, Amazon, etc) to go with the patch cables I had already made with round 4-conductor phone wire. Flat cable with modular plugs should be limited to very short runs.
According to the telco technician who checked out my line, I am near the limit of distance from the central office. Having replaced the cable and indoor connection, I now get a reliable 3MB connection.