I would suggest finding that counselor, but in the mean time, you can work on a few things to help yourself. I was like you for awhile and thought to myself one day, "What's the harm in saying exactly what's on my mind?"
My husband and I tell each other everything. If I'm mad at him, I tell him. If I'm not ready to talk about it, we take a break from each other and then talk about what's bugging us later.
Just keep in mind... 1) Men are simple creatures. 2) Hints NEVER work. 3) You have to say their name to get their attention. 4) You'll never change them. 5) Once something is resolved, don't bring it back up... They won't... They've forgotten about it hours later. 6) You have to explain, in detail, why you're upset and what the cause is, and what you expect to happen from now on. 7) Be honest with yourself... Are you being irrational? (I know I am many times) 8) Recognize the good things he does and comment on them. If you want recognition for what you do, realize he does too. The more you say "Thank you honey for...", the more likely you'll hear the same. 9) Write a list of things you expect from him. Little and big things. Ask him to do the same. Discuss these in a calm manner. Maybe both are thinking the other wants something different. 10) If you have an issue and you find that you want to keep it to yourself, don't. But do write it down... And let your husband read it. You'll be surprised at his reaction and how much better you'll feel.
Above all... Be honest with one another. Talk about things. What's the worst that could happen? You learn about each other?
Also... About his mother... Whatever it is, talk to him bluntly about it. And if you get nowhere with him about it, talk to her bluntly about it.