Are MOSFETs really this good?

The reason for using N-channel mosfets on the high side is that you can get better (e.g. lower Rds(on)) N-channel mosfets than P-channel mosfets. If you are using discrete power mosfets instead of an all-in-one H-bridge chip, this normally means that you are switching higher currents than an all-in-one chip can manage; in which case you need very low Rds(on). There are plenty of H-bridge driver chips around that generate the gate drive voltage for the upper mosfets.

As you only want to switch 0.3A for your stepper motors, and all-in-one chip seems to me to be the obvious solution.