I know Heroku is built on top of EC2 instances so there's a limit to how low their prices can go, but as EC2 prices go down, it doesn't seem like Heroku has changed their prices at all.
Heroku's lowest priced professional tier (Standard) is $25/mo for a $3.50/mo EC2 instance. I know they do a lot of value-add which is worth paying for but yeah, it's still crazy expensive. Elastic Beanstalk gives a comparable function for just the price of the EC2 instance itself.
One routes file is infinitely easier than dealing with an abstraction over API gateway across multiple environments
Scripted “cloud formation” for your MVP? Just skip it