Your configs are good, the problem is the x86 machines that do not report L2MTU.
If L2MTU is not reported by an interface, RouterOS assumes that L2MTU=MTU. But since you are adding MPLS tags on top, you need L2MTU bigger then MTU.
But you cant configure L2MTU since the card doesnt report it, hence you run into an MTU problem.
Its a known problem with cheap NICs and RouterOS on x86.
In your particular case however, due to how MPLS works, and MPLS PHP, this should not show up yet, (on your single hop test). It will only be a problem for MPLS frames traversing multiple MPLS switched hops.
But still, you should not touch interface L3 MTU (should be 1500 over the whole network), and only configure L2MTU and MPLS MTU. Your problems most likely stem from actually changing the L3 MTU (just MTU for Mikrotik) to 2000, and being ununiform in your network.
You probably have something somewhere that breaks PMTUD.
Look at pages 18-19 and 45-49 of my MPLS presentation on this year's US MUM
http://mum.mikrotik.com/presentations/US13/kirnak.pdf