The enthusiasm for tunneling everything over HTTP comes from that being easier than getting firewall rules changed, not any intrinsic properties of HTTP itself. It's port 80 people are interested in, really.
It turns out lots of ISPs and broken routers and terrible corporate proxies only allow HTTP. They do things like require HTTP headers, so they can check for whitelists/blacklists. It's stupid and it breaks TCP/IP in general, but most people only care about the internet so it just works for most people.