The first thing I would do, is call tech support from your provider. There are chances that there's something wrong on the line that you can't do anything about. Especially with DLS, this is a sensitive area.
Also, make sure your upload is not stalling your download.
With a connection it works like this: you download a chunk of say... 1024 packages, then you upload a verification package. Once that package is received, the next chunk will be sent. If your upload is however already full, this verification package is stalled, and thus your entire download is stalled. Are you uploading other things as well? Perhaps via torrent?