This will depend on the service (perhaps an example or specifics will help). The hosted solutions I’ve used in the past, this is not the case necessarily. You register and own your domain name, pointing it at your hosted solution yourself. You control your own nameservers in many cases, and I haven’t yet come across a service that doesn’t allow you to do this. I’ve never heard of a hosted service stealing a domain name you purchased.
And WordPress isn’t always the cheapest, depending on your host, and what you end up doing with your site. For example, Squarespace was almost the same price as running my own WordPress after you consider hosting and some of the built in features it had. And maintenance. It is critical on WP, and is handled for you if you go hosted — saving time (for me), or money (if this is beyond someone’s comfort zone).
You mention products later in this post. If you want to sell something (say, publish your own writing), this levels the playing field. When I did ecomm, hosted solutions were cheaper, faster, and more secure than WooCommerce (on WP). Then labor. WP, while infinitely more flexible, is almost always more labor intensive — by far, especially if you start selling things. I’ve used a dozen platforms, and that WP flexibility comes at a cost. Which of course then leads to support. If you pay for hosted, it could very well come included. WP you may be hiring a professional, depending on what went wrong.
Now not bashing WP — I use it for all my current sites, and (professionally) developed with it for 10 years at least by now (and have been that person people call for help). However while it’s often the best solution, it’s not always the best or less expensive depending on what one wants to get out of their site in the longer run. And I personally have never run into losing my domain name on the hosted platforms I’ve used (unless you’re referring to a subdomain you never owned in the first place? If so, it may be worth clarifying this point — but I’d counter that it’s not really a gotcha, as one should never use that temporary domain in the first place).
