Why does my MOSFET only allow current when it is switched polarity (drain to GND)?
What my be missing here is that source of the transistor needs to be connected to the ground of the arduino AND the ground of the arduino needs to be connected to the ground of the power supply. Remember that ground is just a reference potential, if you don't have the same reference for your gate control voltage then the circuit won't work.
To further clarify, you need a certain VGS for the FET to turn on. The gate voltage is provided by the arduino. However, what's the reference potential (i.e. ground) of the arduino? If it's not the same as the one from the power supply then you won't have the proper VGS needed to turn on the device.