The problem will solve itself. CGNAT will only take us so far until that no longer scales to where the ISPs want to pay for it.
That said, IPv6 is a horrible implementation.
That said, IPv6 is a horrible implementation.
v6 is much easier (and cheaper) to deal with than layers and layers of NAT everywhere.