For at least a couple of years now I get SUPER strange behavior in Minecraft. I can connect freely to 99.9% of servers and play them without any issues and with a fast connection. Every time I or friends buy a host(We currently have a host at ExtraVM) I cannot connect to it(Only it, servers like Hypixel, Cubecraft and Mineplex work perfectly). They can play it without any issues, they connect immediately and play with good ping but I can't even connect.
When I join the server it says
Loading terrain... for ~15 seconds or so and then
Internal Exception: java.io.IOException: An existing connection was forcibly closed by the remote host.
If I try to connect for 10 minutes or so it eventually connects but if I get disconnected, well I need to try for 10 minutes again.
I've tried EVERYTHING! I made new rules on my Firewall, changed DNS servers and even reinstalled Minecraft but it seems it's not a computer problem as with another PC from the same network it has issues as well. When trying to connect with a hotspot I can connect and play but I do not have an unlimited plan so I cannot allow myself. I even tried opening Wireshark and sniffing the packets, it seems the Minecraft client tries to send packets to the host and doesn't get any back so it retransmits the packets until it kicks the error mentioned above(See image).
I have a 40mbps plan and in other games I get 70-90 ping so I don't think the internet speed is an issue.
If anyone has any ideas I can try PLEASE tell me.