Thank you, that is probably it, but if it were true, how come fallback to my ISP's native IPv6 feels instant?
It is only failing over to the tunnel that is slow.
It's not really "fallback" when talking about your native ISP IPv6, because that route has lower distance (lower than the 2 that you manually set for HE). Which means it's the default route.
* When pppoe-out1 was disabled (and after the reboot like you wrote). Your clients on bridge0 only have the IPv6 prefix from HE, and traffics are routed through the HE route as expected.
* Now when you bring pppoe-out1 up, DHCPv6 client gets the prefix from the ISP for the pool, which is then announced on bridge0 immediately, clients have both prefixes and probably prefer the more recent one (there is also the prefix preference order from RFC 6724
https://datatracker.ietf.org/doc/html/rfc6724 that is applied first, on Windows you can see it by running
netsh interface ipv6 show prefixpolicies
which by default outputs
Precedence Label Prefix
---------- ----- --------------------------------
50 0 ::1/128
40 1 ::/0
35 4 ::ffff:0:0/96
30 2 2002::/16
5 5 2001::/32
3 13 fc00::/7
1 11 fec0::/10
1 12 3ffe::/16
1 3 ::/96
but in this case 2001:470::/32 still falls under the same precedence of ::/0, so the facts that the ISP prefix is preferred is not due to this). The clients prefer the ISP prefix, and on the router, the default route is the ISP's route, so it works "instantly".
* If you now disable pppoe-out1, the fact that the ISP prefix has now been removed is not announced immediately on bridge0. Clients still use the ISP's prefix, but on the router, the route with distance=2 is now the active one. Packets are now sent through this route but with source addresses still having the ISP's prefix. Reply-packets will of course not be routed back by HE (not in their prefix range). Ping would not even work like you observed.
* After a while (up to the RA Interval with the default value of 200-600 seconds on the IPv6->ND entry) the router sends advertisement packets with the only prefix left as active, your OS will mark the other prefix as deprecated (probably still visible if you run ipconfig / ifconfig / ip addr depending on the OS, but marked as deprecated). Now connections will use the addresses with the HE prefix as source addresses and are routed correctly.