You're on the right track with your local Python proxy, but accessing it from outside your residence without opening ports isn’t feasible with a traditional server approach.
Networks that offer this kind of functionality typically use a reverse connection model—instead of waiting for inbound connections, your proxy node initiates an outbound connection to a central relay server, maintaining a persistent tunnel. This allows external clients to route traffic through your proxy without requiring open ports on your router.
To implement something similar:
Use reverse proxy tunneling techniques such as reverse SSH tunnels or tunnel services that create outbound connections from your machine and expose them via a public URL or port.
Build or integrate with a custom relay system where each proxy client connects out to a central hub, which then forwards traffic back and forth.
In short, to avoid port forwarding, the key is to reverse the connection direction — have your proxy client connect out, not listen in.
Also, if you're focused on reliability and residential IP quality, looking into the Best Residential Proxies can help improve performance and success rates for your use case.