They can, if they want to, and you can afford to pay the premium price, If you need a fixed IP for some purpose you have to go to a supplier that offers the service and pay for it in addition to normal cost, If it's for a web site it's cheaper (though not cheap ), to go to a Specialist hosting company that will handle everything for you. If you want to run a game server at home then you can find a provider to supply a fixed IP for home use although this will be limited to bandwidth and relatively expensive.
As for why they do things this way, it's simple economics, they have to outlay cost to provide a different service to what 99% of users need, so they charge for it,and they charge as much as users are prepared to pay