AFAIK, there need to be two things available for your device to get non-link local IPv6 address. Your router should get a non-link local IPv6 address from ISP. Your ISP and router should support DHCP-PD (prefix delegation). With this, your ISP will give you a large subnet of IPv6 addresses (typically /64 subnet) for your router to assign to your devices.
Check that:
- Your router has a non-local IPv6 address.
- Your router has DHCP-PD support and it is turned on.
- Your ISP has support for both.