Hi OP.
Just reading your thread now, and I feel as though my eldest daughter is much the same as your son. I completely empathize with the struggle it is, as well as the thoughts of 'where did we go wrong?'.
My DD is 4 and a half, and her compulsive behaviour is asking the same question over and over, even if she knows the answer. She also in the past has licked her hands or rubbed saliva over her arms, legs and face. She also gets us to repeat stuff until we say it correctly. Also demands we look at her face when she is talking to us, and will continuously restart if she is remotely interrupted. It is very, very tiring.
My daughter goes to Kindy, 3 full days a week, and I can positively say that it is something that makes this behaviour occur a lot less, and easier to manage.
Talking to various people, and my DF and I have boiled it down to boredom, or under stimulation. Pretty much my DD is gifted (not officially 'diagnosed' as yet, getting there) and she needs extra stimulation to keep her brain ticking, if her brain isn't ticking she falls into this annoying, compulsive behaviour. DD is ahead of the kids in her class.
Her teacher has been brilliant, and sends home extra work for DD to do, to keep her brain going.