There's tons of businesses that are happy to charge less for bandwidth; so it's clear Amazon (and some of the other high tier cloud services) are overcharging on this maybe by a factor of 10, although since transit bits are not all equal, someone with more detail could make a case that the overcharging is less.
It's easyish to compete on bandwidth costs, but Amazon has a lot of other features many people want; it's harder to replicate all of those, especially the part about having a long history of operating such services and not making a lot of changes to make things more expensive or otherwise more difficult. Having to pay a much higher than market price for an easily replaced good in order to get a good that's less easily replaced is textbook anti-competive bundling.
If your bandwidth usage is high enough, maybe it makes sense to send it all through AWS direct connect, and pay for transit yourself; although even then, the AWS direct pricing seems a bit high.
If you ask the fancy restaurant to cater a steak dinner for 1000 people they will charge you a lot closer to supermarket beef.
The point is that if you charge absurd prices for what has basically no marginal cost your pricing model is broken and 1) you are excluding customers that are particularly sensitive to this price or 2) you are liable to undercharge other customers that primarily use other services for which you are not charging what it costs you to provide.
For AWS, given the generally inflated prices, it's probably a lot more of 1) than 2).
As I explained in another commented AWS wants to disincentivize dumb bandwidth usage. They want you to use your bandwidth for traffic that needs it to EC2, and you get much better rates for static data from CDNs, S3, etc.
It's easyish to compete on bandwidth costs, but Amazon has a lot of other features many people want; it's harder to replicate all of those, especially the part about having a long history of operating such services and not making a lot of changes to make things more expensive or otherwise more difficult. Having to pay a much higher than market price for an easily replaced good in order to get a good that's less easily replaced is textbook anti-competive bundling.
If your bandwidth usage is high enough, maybe it makes sense to send it all through AWS direct connect, and pay for transit yourself; although even then, the AWS direct pricing seems a bit high.