I'm guessing the biggest cost of building and maintaining mobile data infrastructure is the labor, and physical and intellectual labor in India is just way cheaper on average than in the US.
Historically, though, the US carriers have operated in way that makes it harder for customers to switch between carriers (carrier-specific-frequency tied phones, contracts). Some argue that this is a natural technical outcome of covering an area as vast as the US, and others say this is deliberate collusion. Either way, MVNOs that disintermediate this seem like a healthy stimulus for competition in the US mobile data marketplace, and perhaps they will be able to reduce the cost/GB in the US.
EDIT: wording
Even their roaming price doesn't compare well - for Asia I get ~$8 per day, for Europe, North America and Oceana it's $15 per day. This is for unlimited data, at full local network speed.
Last time I was in LA for a project (with half a dozen others, all came in from different countries) it often worked out cheaper/easier for them to all just ether to my phone than deal with a crappy prepaid data service each.