If you are considering wordpress, you can self host it on Amazon Web Services. They have a free tier of services that are fine for hosting a small website. You would have to buy a domain name, costs around $10/year for that. It is a bit more difficult than using a hosting provider, but if you have some tech knowledge it isn't too difficult. There are a bunch of guides if you google "wordpress on aws free tier".
As far as I can tell it would not be a violation of their terms, there is nothing illegal about a provider advertising their services.