Yes, you can use PWM to control this motor. To control the speed only, you can use one MOSFET/BJT to control the motor. To control the direction as well, you need to implement a full-bridge circuit.
At this power level, I'd recommend that you use a MOSFET. What is the frequency of PWM that you are going to use?
You can use a POWER MOSFET, which has a low Rds(on). So, you minimize power loss and increase efficiency. However, this will require a driver circuit that will provide the MOSFET with around 10v from the logic level of the microcontroller and also supply more current.
Alternately, you can use a logic level MOSFET. However, they tend to have higher Rds(on). By using a logic level MOSFET, you can drive the MOSFET directly from the microcontroller. STP55NF06L is among the better logic level MOSFETs I've come across. It has an Rds(on) of about 18mohm. This is quite low for a logic level MOSFET and even comparable to POWER MOSFETs. The IRFZ44N has a higher Rds(on) than STP55NF06L. Using a logic level MOSFET simplifies the drive circuit.
Hope this helps.
Tahmid.