If you're afraid it has to do with his father coming back on scene, then chances are, you're right in your concern.
I would imagine that his father returning - your son may have set himself up for a big expectation. His father would return, be so sorry for missed times, think his son was awesome, want to do all sorts of "real" father-son stuff, etc. Is this happening?
Because, if not, then I imagine your son's reaction to it not happening is thinking "I suck." Not showering and not using soap when he used to sounds like depression to me.
And if he admits that he thought his dad would be all "Oh, wow, my son, my son, I love you so" and he's not - it sounds stupid and emotional and lame. And what 12-year old wants to admit that?
And seeing that you would like for your son to be able to speak with a counselor privately tells me that you are willing to consider, unlike some parents, that you aren't the end all be all in your son's life, which is important and really commendable. It doesn't sound like he'd be dealing very well if you threw your ego into the mix at this point.
And maybe his dad's returning on scene does make your son suddenly resent his step-dad - feeling that if he weren't there, you might get back together with his real dad. That's a fantasy most kids never give up - unfortunately.
Maybe you've been a great mom and have made it a point never to say anything bad to your son about his father - maybe it's working against you, now? If his father is a "great guy" but still isn't all into frequent bonding with his son - then "obviously" there's something wrong with your son - from your son's point of view anyway.
I would switch to a counselor where your son can speak privately - and tell him. However best you can express it - "Kiddo, I love you and after knowing you for 12 years, I know you're hurting and it hurts me that I can't stop it. I feel as though you have things you'd like to say but maybe you think I'd be angry or that (step-dad) would be angry... I want you to go to a new counselor where you can say whatever you feel and not have to worry about what we'll say or think. The counselor will probably tell us some stuff but it'll be all watered down... (use an extreme example) like if you say, "Sometimes I hate my mom" then the counselor will tell me that you get angry with me sometimes..."
So - I'd switch counselors, explain why, while you're at it, remind your son, if you can, why you and his father split up without blaming or finger-pointing but kind-of "as much as it hurts, sometimes people just don't get along... doesn't mean one person is awful and the other is an angel..." and remind him that there's times when we do things we don't want to or don't feel like it just because it needs to be done - like showering with soap and cleaning up our room... starting now.
God bless you,
E.