EV3 Unregulated Motor - different plus/minus power behavior
The answer is basically the same as the LED question that you linked. On the EV3 output ports, pin 2 is internally connected to pin 6. So, when you tell a motor to go in reverse (negative power value), pin 2 is powered, which in turn raises the voltage on pin 6. Both pins 5 and 6 are used for automatically detecting when a motor is connected.

So, when you use a negative power setting, most of the time (but not 100% of the time), it it will trick the EV3 into thinking there is a motor connected and the motor will stay powered. However, when you use a positive power setting, pin 1 is powered instead of pin 2, so the EV3 thinks that there is no motor connected (because nothing happens to pin 5 or pin 6). So, in this case, the device connection manager in the EV3 software takes over and resets the motor port, which causes it to stop sending power to the motor.

I attached an oscilloscope to pins 1 and 2, to see what is going on.



As you can see, the output is only turned on for 380ms, then it turns itself off. The motor was instructed to run indefinitely, but in reality, this is not what happens.

Since your test involved running the motor for 1s but it really only runs for 380ms, one would expect the car to run 38% of the distance as in the reverse case. You observation was 33% (one track length vs. 3), so that is quite close to what is expected.

As a workaround, you can Use the Unregulated motor block in a loop like this...



It is important to use two different "power" values. Each time you change the value, it turns on the output port again. If you use the same value, the software won't update the motor port and the device connection manager will take over and turn off the output.