Well, have a go with those techniques. Re: The growling..... Before we got him settled down, Boris (like our previous puppies) growled ferociously when he was leaping on us trying to play. But this kind of growling was completely different from his growl when he seriously on the alert and/or expressing discomfort with something. Play growling sounded louder --from the throat -- and was accompanied by attempting to mouth, grabbing clothes and jumping excitedly. Ears are forward and engaged, tail down and wagging, no hackles. His serious growl, which I've only heard on a couple of occasions, is a deep rumbling in his chest, whilst he is standing on guard with hackles raised, tail up and stiff, face taut, staring at the 'threat'
When you say 'snapping' -- do you mean opening and closing his mouth whilst jumping around trying to take your arm or hand into his mouth and/or nipping (which is how I interpreted your first post)? Or do you really mean lunging at you whilst growling seriously,and trying to bite you with intent to harm? The first is just playing, and should be an easy fix. If you really mean the 2nd (which actually would greatly surprise me given his age and your first description of his behaviour), then I would get a behaviourist involved immediately.
Again, if you conclude it is play biting, the risk of his actually hurting you is very low. I have a few ripped clothes, scratches and gouges from Boris because his teeth are needle sharp, but he never gave me -- or any of the rest of the family -- a bite or puncture wound. In terms of his progress, he has gone from the Bitey Demon Dog From Hell to bringing us a toy if he wants to play, and very gently holding our hands or wrists in his mouth with no pressure exerted whatsoever. I know it's easier said than done, but try to at least pretend you feel confident when you interact with him.