You have not mentioned it, so I'd guess you're driving the MOSFET directly from the Arduino. That alone would explain the large dissipation, as an MCU GPIO pin is simply not powerful enough to drive a power MOSFET directly. The IRF3205 is a non-logical-level MOSFET, so even the driving voltage alone may be insufficient (logical-level MOSFETs can be driven from 5V, non-logical-level MOSFETs are usually specified to be driven from at least 8-10V). But for high frequency driving, the gate also needs to be charged and discharged reasonably fast, and in case of power MOSFETs switched on and off tens or hundreds of thousands per second that needs a driver capable of sending driving current on the order of Amps. An MCU output is simply not powerful for this, so the gate voltage will not transition fast enough, and the MOSFET will spend most of its time somewhere in between the fully open and fully closed states. The solution is to use a MOSFET driver between the GPIO pin and the MOSFET gate. You'll also need a proper power supply for the MOSFET driver, in the range of 8..12V, for this MOSFET type. You might replace the MOSFET with a logical-level MOSFET, then you may use your 5V supply, but you'll still need a MOSFET driver.