Normally I'd agree with all the advice you've had so far but what catches my attention is that he's done this for so long. Are you sure there's no other time he does this and no other quirky activities? Does he ever do it when he could be around too much noise, too many people, lights that are annoying, when he's overtired or overstimulated? What does he do if he is not ready for an activity, like when he is just waking from a nap and not "energized" enough yet? Does he do anything different around strangers, especially other kids?
Just considering that it may be a sensory seeking activity. Take a look at this page: http://www.sinetwork.org/aboutspd/homeactivities.html See if anything there sounds familiar or possible. DON'T be put off by them referring to it as a disorder.... EVERYONE has sensory issues. It's just a matter of if they keep us from functioning or not. Most people learn to live with them, that's all.
Please write if I can help. My daughter has this. She's almost 3. I can tell when she's having a tantrum and when something is bothering her. It's very different once you're aware of their situation.