So the past 2 days I was riddled with this problem. I couldn't even join a server it just came up with the error after a minute of "Logging in".
I tried reinstalling Java and Minecraft, which did nothing. The only sort of improvement I got was with Humbug's idea. This allowed me to join a server, but crash a few minutes later with the same error.
I recently had some problems with my Motherboard very recently, due to OCing (It's been OC'd for a few years so it's failing often now) I use my onboard Ethernet usually, so I figured I'd try one of my other Ethernet Ports on my PCI cards thinking my Ethernet port could be corrupt. Unfortunetly they both did nothing. I tried disabling all of my Ethernet ports except for the one I'd be using and tried again. And to my suprise it started working! I could join servers and not have java connection reset.
So by using a PCI ethernet card with the transmit buffers set to 512 and being the only Enabled ethernet port on my computer I managed to get it working! When I try and have 2 ports enabled, I cannot join a server. So maybe it has something to do with that?