I just went through some ipv6 setup fun on Comcast/Xfinity last weekend. Thankfully I was able to get it working after a couple of hours. I haven't used pppoe so I don't know how it's supposed to be set up, but you are getting the same DHCP error I had so maybe I can give you a couple things to try.
There's a rule in the default firewall that accepts DHCP packets but only from a link local address:
;;; defconf: accept DHCPv6-Client prefix delegation.
chain=input action=accept protocol=udp
src-address=fe80::/10 dst-port=546
My ISP sends DHCP replies from an address that is not on my subnet, so I had to change that rule to accept DHCP from any address. Hopefully my ISP has safeguards in place to prevent rouge DHCP servers from other customers. This also caused a problem when using add-default-route in the DHCPv6 settings. The route gets pointed at the DHCP server, which is on a different subnet and thus does not work. I need DHCP to get a prefix, but Comcast seems to expect me to rely on router advertisements for the default route. This looks really strange when you are used to IPv4 and not IPv6, but my default route looks like this:
As ::/0 ether1 ip6 1 30 10 ether1
No address, just an interface. I added that route (/ipv6 route add disabled=no dst-address=::/0 gateway=ether1).
This won't break DHCP, but you might also have to have DHCPv6 request an address in addition to a prefix or maybe enable router advertising. Right now you only have a link local address on your WAN interface and router advertising is disabled. That maybe could work if the ISP's system remembers the link local address it gave a prefix to in response to a DHCP request, but there's a good chance it won't. My hunch is that it will either work as is or you will need to request an address via DHCP. Network admins don't trust end users (especially software engineers like me... we know just enough to be really dangerous), so why would they trust your router advertisement? I have router advertising disabled on the WAN interface and am requesting an address over DHCP. You may also need to set use-peer-dns=yes in the DHCP request.
Another thing to bear in mind is that the DHCPv6 server in RouterOS can only delegate prefixes (see
https://help.mikrotik.com/docs/display/ROS/DHCP+Server), not addresses, so you don't need the DHCPv6 server unless you have more routers downstream and want to give them prefixes.
What kind of TP-Link did you have? I'm just curious because they make both consumer and business models.