Not sure what you mean by third party services
do you mean relying on a third party full stop, or do you mean relying on some product(s) only offered by one company?
I have a free-tier VPS, set up a WireGuard server, and port forward over that. Works great, a little bandwidth hit (VPS connection "only" ~400Mbps and my raspberry pi can get CPU-bound on a gigabit over WireGuard anyway).
While this relies on a third party in a general sense, it doesn't specifically rely on any one third party: if I want I can just spin up a VPS on a different provider, change my DNS entry, and I should be up and running.
While something like TailScale probably would work for me and possibly be more convenient, I like relying on just the basics.
Some sort of tunnel will work. I haven't used Cloudflare, but you can get a free VPS (virtual private server), open ports on that, and set up a tunnel with appropriate forwarding (I'd suggest WireGuard). This is what I do and it works great.
You could also look into TailScale
haven't personally used it but heard good things (it's WireGuard based).