This is discussed somewhat in the thread "MTU problems".
To summarize:
If in a PPPoE Profile, one has Change TCP MSS set, then two dynamic mangle rules are created:
One, which changes all outgoing syn packets from the PPPoE interface explicitly to the PPPoE max permissible value.
And one, which changes all incoming syn packets to the PPPoE max permissible value.
The problem is that these rules do this irregardless of what the previous values were.
This breaks communication with any site that has/needs a lower value.
The rules need to be altered to either use clamp to pmtu and/or add a TCP MSS statement (in winbox, this is shown in the advanced tab of the specific mangle rule) to only match packets which have an MSS larger than what the rule is going to change it to.
This problem specifically observed in 2.9.44
I discovered this while trying to prove that a remote site was stripping ICMP packet-to-big messages, and discovered in a packet capture:
Packet entering mikrotik:
https > 2463 [SYN, ACK] Seq=0 Ack=1 Win=4140 Len=0 MSS=1380
Same packet leaving mikrotik via PPPoE interface:
https > 2463 [SYN, ACK] Seq=0 Ack=1 Win=4140 Len=0 MSS=1452