Got an Asus AX55 and the final results are as follows:
MT - Linux - 2 cables and ports - 2 NICs - box A and box B - 300Mb
MT - Windows - 2 cables and ports - 1 NIC - box A and box B - 600Mb
MT - NomadBSD - 2 cables and ports - 1 NIC - box B - 600Mb
Archer - * - * - * - * - 600Mb
Asus - * - * - * - * - 600Mb
I realize MT is not for beginners and/or it may be just some setting to the Linux' network stack or something, but I don't really see myself thinking about that every time I change some box here. For me the best solution is to return it and stick with Asus. Thanks for the tips anyway.
What is odd is that the Archer and Asus are doing something different when Linux is being used, and that's why I suspected that mss clamping was the possible difference. If that was the difference, why wouldn't it also affect BSD and Windows? (just thinking outloud).
Were the tests done on high latency networks? The tcp window size could have an effect there. Wireshark would be the tool I would use to try to determine the cause of the observed differences.
Troubleshooting Network Latency with Wireshark
There are many youtube videos for demos of troubleshooting network performance with wireshark. Chris Greer has many.
Can you explain the "2 NICs" vs "1 NIC". I assume that means you tried Linux with 2 different types of NIC.
I can understand why you would feel that way. It sounds like you have done a reasonable amount of testing. It is too bad you don't have the ability to capture the packets to determine the cause.
You could capture on the MikroTik hAP ac3, but that would not be a valid test for performance, because it would be using resources on the hAP ac3. For debugging, on router capture can be handy, but in my opinion, using /tool/sniffer isn't good for performance measurement, just like speed test from the device itself isn't a good indication of the max routing performance. It would be good for capturing data to see if packet fragmentation is the reason for the difference in performance.
https://linux-hardware.org/?id=pci:8086-107c-8086-1376 indicates that the Intel 1000 82541PI has good linux support, and generally linux network support is good. If you look at freebsd sites you will see claims that bsd is superior, if you look at linux sites you will see claims that linux is better.
The primary advantage of the MikroTik is versatility, with with the ability to support vlans, dynamic routing protocols, capture traffic, generate traffic, and with v7.2+ has wireguard (and zerotier on ARM devices like the hap ac3) supported.
If you are just using the device as a home router and not doing anything that the standard consumer based routers will not do, the hAP ac3 may not be the best choice for your situation. And for wifi other devices may be better.
Before you send it back, can you at least do an /export hide-sensitive file=hap_not_linux_friendly_with_ppoe and post so someone else with a hap ac3 and pppoe connection can verify your results?
And how you did the testing would also be useful, e.g. were the tests done on same hardware (booting Linux and BSD from live distros loaded into ram).