You cannot always scale a piece of software horizontally to multiple servers (think running Postgres), so your only real option for more performance is more resources on a single box. You pay a premium for that.
Sure but there is no cost basis for the non-linear increase. If anything it should be slightly less expensive for them. If you look at GCP/OVH/AWS their pricing are all roughly linear.
It's probably a pricing strategy to make more money of those running higher demand stuff.