Remove the carb, and give it a good cleaning paying attention to all the small holes, You have something is the idle circuit of the carb. Most people don't know that an engine runs on the idle circuit even at full rpm with no load. It will open the butterfly under load and then use fuel from the high speed circuit. Which will explain will an engine that surges will operate fine under load.