Not going to claim to be a Guru here, but I have a few thoughts, and some things to try. I see some things of mild alarm... may not be vast errors, but are certainly interesting to me.
The dmesg is massive... perhaps you can look for eth0 messages, http messages and the like, and just post a few blurbs.
ifconfig posts 6 errors in recieving, which may not be a ton... but I am wondering if packet loss or somethign in general may be at work...
Odd that in the iwconfig your crypt invalids is the same count as your ifconfig errors... but that could be grasping at straws and just be coincidence.
http://www.dslreports.com/tools has a whole bunch of tools you can run to test your connection and a tweaks section for fixing things which are not configured right.
Try the line packter loss test first, then try the speed and tweak tests.
Then try the same tests again with the SuSE Firewall disabled, I am wondering if perhaps that is getting in the way, but given that with debian it performs the same oddness, that is unlikely unless debian has a built in firewall as well(not familiar enough with debian to know).
As the tests are java and broswer based, they should work for Linux as well, but I doubt the settings tweaks will work, you may have to find how to manually configure any recommended tweaks.
As an aside... If you hardser DNS servers do your speeds seem any different at all, or have you tried that? It may be looking into a router to pc DNS mispopulation issue.