EDIT: On the "US is big" point, it's notable that pricing doesn't really follow population density in Europe. The UK has four times the population density of Ireland, but only fractionally cheaper data. Germany has similar population density to the UK, but far more expensive data (though I wonder are they looking at all extant contracts or something; data recently got a lot cheaper in Germany).
All three countries have comparable household earnings. Sweden has a third the population density of Ireland (less than a tenth that of the UK!), slightly higher average data cost, _cheaper_ minimum data cost, and comparable household earnings.
In general, any attempt to explain this via recourse to population density, income or GDP fails in the developed world.