Just taking a wild guess here, but two thoughts come to mind. Is your battery up to full potential to spin the engine as it should..?? If so, I'd have to guess lack of compression.
Using the starter just doesn't spin it fast enough to compensate for lost compression, whether around the rings, or valves. Where as pulling it, spins the engine fast enough to overcompensate for the lost compression.
Are you the original owner, and how many hours are on it..??
If it has been idles quite a bit, it may have the cylinders glazed, causing a loss of compression. Or..., maybe started quite a few times in cold weather using ether, drying the cylinders/cutting oil from the cylinder walls, causing ring wear. Does it consume much oil to speak of..??
Sounds like it may be well worth taking a compression check on it. And that takes a high pressure compression tester designed for diesel engines, as it should have an approx. 18:1 ratio, compared to 6:1 or so for a gas tractor engine.