Many registrars let you buy a domain and set up dynamic DNS for it within their system so you can own a domain and get dyndns on it.
Otherwise you could accomplish it with a VPS but you’d only need the smallest one available because it would just need to run nginx to forward to your home ip (and a small tool to update that IP when it changes). So you could probably get something for less than $5/mo.