You could try using ZeroTier - it can establish VPN connections even on devices that have CG-NAT in front of their local network, works over IPv6, has barely any overhead, has support on OpenWRT, Android, iOS and desktop, and is completely free. Setup is mostly painless (register on my.zerotier.com, create network, add devices, approve them, and pretty much done), and as long as you don’t require advanced routing (e.g. accessing your LAN via ZeroTier through a single node located on the LAN), it should do everything you need.