RE: engine puffs in air...
If the bearings are smooth, and no wiggle in the crank, they are fine. In any case, they are not your problem.
When you've tried everything and the problem is still there, it's time to take a deep breath and start from the beginning again and forget everything that you have done so far. Tearing down and replacing parts are just shots in the dark that will only cost you money and possible damage to the engine in the process.
This probably has nothing to do with it, but when you punch a four stroke engine in the air, it puffs until it's up to speed. A glitching throttle servo may cause rapid throttle changes. I've not seen a two stroke do this, but it should be an easy check out.
If I were tackling this problem I would start by replacing all lines in and from the fuel tank. Make sure the bung is tight and thetank is intact. Iwould then tear down the carb completely and give it a good cleaning. Iwould replace the O rings. If you haven't owned this engine from new, Iwould make sure all the carb parts are the correct ones. Once you are satisfied that parts are clean and correct, put it back together and set it for the "factory settings" and give it a go.
The reason I suggested a review of the parts in the carb is that I acquired a Saito 180 with just a few hours on it, but it wouldn't run well. After cleaning and setting the carb to factory in ital settings, I could hardly get it to run at all. It seemed to hinge around the idle mix. When I checked the Saito parts, the 180 and 150 carbs are the same with the exception of the idle mix screw. I ordered out the 180 screw and compared it to the one in the carb. There was a slight difference in length. With the new mix screw, the engine fired straight up and with minor mix adjustments, it is a very good running engine now.
Start over and ignore nothing as "already checked that", you have most likely missed something.
One thing came to mind just now. If the engine has been taken down before, is it possible that the cylinder sleeve is not installed correctly? IE the ports don't align properly with the case?
Don