Because almost no one pays the actual price for their phones.
10-50 bucks a month, including service, in most people's minds means their phone costs 10-50 bucks. It doesn't matter that it costs them more that way, it's still a small price tag they actually pay each time.
It's the same way that the average spent on Laptops/PC's is only around 600 dollars, and are never upgraded, despite the fact that they're vital for most work, that then leaves people with a machine that's bloody useless after a few years.
People don't like spending more than they have to, and there's certain barriers of price that yhe average consumer just won't go over for whatever reason.
For consoles, people have decided they're not worth over $500, so that's what manufacturers need to aim for.