Most of these things are cold natured beasts, I know mine is. Mine simply won't idle when cold until it nears 150 degrees. As far as warm idle goes, could be ignition, could be choke partially closed, could be idle mixture, could be it needs a card rebuild. I don't like to do a rebuild untill all else fails though. So I would try some Seafoam (make sure to use a double dose as for cleaning, that is what you have to use). I would also verify everything is adjusted correctly (idle, idle mixture, timing) and that it does not need a tune up. I had issues with mine last year where it would act like it was starving for fuel after it was hot and went through a no wake area and then tried to accelerate again. All it needed was a good tune-up. Seems the last mechanic who worked on it and replaced the engine failed to take spark plug class. All plugs were gapped wrong and 1 was even cracked. They also used the cheapest of the cheap cap and rotor and the wires were original
So a new set of AC MR43T plugs, gapped correctly and anti-seized, new quality cap and rotor and a shiny new set of wires and that problem just disappeared