As long as the MOSFET can handle the current, you should be fine. In a switching application (i.e. PWM) you dont have to worry about the power rating, just the voltage rating (far more than 12V, I assume) and the current rating. However, you may need a heatsink because a MOSFET is not a perfect switch and it will dissipate some power. A good rule-of thumb is if it gets too hot to hold your finger on, add a heatsink.
That said, I'm curious how quickly can this FET switch -- can I switch ON/OFF quickly enough?
2000 times per second (2kHz) is S-L-O-W for electronics. (It's super-fast for a mechanical relay, which might swich a few times per second.)
don't want to use voltage dimming because it's for a special project that requires custom PWM control, perfect for an Arduino sketch.
Plus, linear dimming inefficient. Not only are you wasting power, your current-limiting device (i.e. the MOSFET) has to handle voltage and current at the same time, which means it needs to dissipate power, and it will get hot (or hotter
I don't think I need a resistor before the gate,
It would be a good idea. The input of a MOSFET has some capacitance, and it's generally a bad idea to connect a capacitor directly across to an Arduino output.