If in doubt, it's probably an MTU discovery issue. Initial TCP handshake succeeds, then the connection hangs on the first major payload packet (e.g. HTTP response). At least I've seen that happen on lots of awful setups. Many ISPs seem to have routers that neither fragment packets, nor do they respond with ICMP Fragmentation Needed packets. So the connection eventually times out.