AWS and Azure are good hosting options but they are pretty heavy duty and are likely to be more expensive in your current architecture.

To make them cost effective you want to be using distributed web services and something like Docker (other tools are available) https://opensource.com/resources/what-docker with which you can host your web services in containers which can make hosted apps significantly cheaper to run.

The main cost in Web hosting is all around data access, you will generally host your web app as a hosted application, then you have to host your database and your web services. having your data access layer in containers means they can run on demand (rather than always running) reducing the cost, as you generally get charged for usage over time in AWS and Azure.

Doing proper hosted apps in AWS or Azure if you ever want to go down that route is a skillset in itself (as i am currently learning) there is a lot to it and alot of different options, in AWS for instance you can even do all your infrastructure as code by using AWS's Terraform language which allows you to define your hosted network through terraform script files.