Maybe you don't need a static IP, though? If it only changes occasionally, you can just run a small program that checks periodically for those changes and updates the DNS records when it does. I've done that (using Cloudflare as the DNS server) and it worked just fine, the downtime was minimal.