I think I have the soultion to this problem. I didn't actually have the "Internal exception: java.net.SocketTimeoutException: Read timed out" error. I had the error: "Connection Lost Timed Out". After a while I did get the error your getting but only for a short period. The soultion for me was to reboot my router. You do this by unplugging your router and plugging it back in a minute later. Even if your minecraft servers work on other computers in your house this could solve your problem for a single computer.
I have bought a server but I don't host it from my computer. When I join it everything will seem normal for about 15 seconds. Then every player and mob will freeze and I can't chat or use commands. Also I can't open chests, furnaces, crafting tables, etc. Then in another 30 seconds, I will get disconnected and It will say "Connection Lost Timed Out". I later noticed that this happened on every multiplayer server and not just my own. I tried going on my server from another computer in my house and It works fine. Please reply if you know how I might solve this problem.
0
0
0
0
0
0
0
0
0
0
0