I was going to suggest a vacuum leak or stuck vacuum advance until you said it's dieseling when hot. You're likely getting gas leaking through the carb where/when it shouldn't. Rebuild or replace the carb, check the advance, and make sure all the vacuum lines are closed.
When was the last time you changed the fuel filter?