Just rebuilt my server today and ran in to this issue. The global /64 that is assigned on the PPPoE connection with a Router Advertisement only routes for an SLAAC address and not for any other address within that /64 i.e. privacy extension addresses don't work for the PPPoE link.
E.g. Link local assigned by IPv6CP is fe80::cd9b:7501:a148:4dec so my SLAAC is 2607:f2c0:a000:xxx:cd9b:7501:a148:4dec and this works for global connectivity. However if I do a privacy extension address on the same interface of 2607:f2c0:a000:xxx:f0b4:ff23:d247:f914 then that doesn't get routed properly. I can ping6 to google.com and switch the two source addresses (-I option on Linux). The SLAAC source address gets ping replies but the privacy extension source address sends the packets out and doesn't get replies.
Gabe, can you go kick the routers please?