Apart from "because people will pay it", why do US cell providers charge so much for text messaging? Text messages place very little strain on the networks compared to voice calls, because of their small throughput and high latency. And yet, it is cheaper using most providers and plans to make a 5 minute call than to send a single text message.
Text messaging became popular in countries where voice calls were expensive and text messages were cheap. Some cell providers charge a fixed fee per call (flagfall) in addition to the per-minute rate, so it was often much cheaper to send somebody a quick message rather than calling them. The same reason pagers became popular in the 1990s - they were cheaper than cell phones to own and operate. People got very skilled at packing a lot of information into messages by abbreviating text as made popular in cell phone commercials of late ("idk, my bff Jill?").
So in the past 10 or 20 years, the wireless technologies have improved. Speed and capacity of networks have improved dramatically. You can stream live video to your phone now. But 160 character text messages have INCREASED in price.
Cingular "MediaNet Unlimited": Get ready to open up the power of your phone! Enjoy unlimited high quality video and entertainment in the palm of your hand. Get UNLIMITED access to Cellular Video and MEdia(TM) Net. - $15/month
Cingular "Messaging Unlimited": UNLIMITED Text, Video, Picture, and Instant Messages. GET IT ALL at a discounted monthly rate. You have the freedom to message any way to any one. - $20/month
T-Mobile "Unlimited Domestic Messages" $14.99/month
T-Mobile "HotSpot" $19.99/month
Sprint "Unlimited Messages" $10/month
For Cingular, unlimited text messaging is actually more expensive than other higher-bandwidth unlimited data services. For other providers, the cost is comparable, but in per-unit-of-data sense, highly inflated. If I sent text messages as fast as I could as often as I could for an entire month I couldn't hope to come close to the bandwidth usage of streaming video.