FQPF5N60C MOSFET turns on but limited current
The Rds(on) is only guaranteed with 10V drive so the 3.3V the Raspberry Pi can output is nowhere near enough (and neither is the 4.47V), also that's a high-voltage (600V) MOSFET which isn't really well suited to switching a low voltage 12V motor. For the same die size/cost you get much much lower Rds(on) by using a MOSFET with a lower maximum Vds, so usually you do not want to over-rate the Vds by too large a margin. 

Get a logic-level MOSFET rated for maximum Rds(on) with 3.3V or less drive (and be sure to put a diode across the motor). For example this one. 

Edit: the Vgs(th) is better used as an indication of when the MOSFET is almost
fully "off" rather than "on". In the case of your datasheet, it's only conducting 250uA with (as much as) 4V in. 

Edit': Your drive circuit is okay, except you should have a series base resistor on the NPN (eg. 1K). 

You can simply move R3/2N3906 emitter connection from +5 to +12 and you'll get sufficient drive voltage for that MOSFET or other more appropriate ones. There's no unusual danger to the Pi if nothing mechanically shorts. 

That particular MOSFET is still not great (2.5 ohms when cold, so maybe 3-4 ohms hot), so you can work out the voltage drop from your motor current draw. With 12V drive you could use a much better through-hole part like a IRFB7437PBF with 1200 times lower voltage drop. 

Don't forget the diode across the motor.