FET level shifter for serial does not work with inline resistor for safety
When the 1.8V side pulled low, the 3.3V side seemed to pull only half
  way.


Chances are the FET you used did not turn on very well with only 1.8V gate-source drive - choose a FET with a low \$V_{GS(Threshold)}\$ typically under 1V.

The other way round the circuit works because you are using the substrate diode in the FET and that drops about 0.7 to 1 volt.