Long story short, my 1 yr old intact gsd mix has had some concerning behavioural changes lately. He has always been nervous, but instead of trying to retreat when he's overwhelmed, he now growls and snaps. This happens particularly when 2+ dogs approach him at once, and can sometimes happen when it's a single dog (rarer, he's 80lbs and tall, and he knows it). Whats weird is that he'll see the dogs from far off and whine and pull towards them (we are working on leash training) like he wants to go see them, so what I've done in the past is make him sit, wait and make eye contact with me, then release him to go play. Except now he'll see the dogs approaching, freeze and when they get close to sniff he growls and snaps. Needless to say we no longer frequent the areas where people walk their dogs without a leash (I live in a pretty rural area). This behaviour also coincides with him becoming much more dominant in his interactions with other dogs, he will be aggressive and lunge at young unneutered males, and try to hump females and submissive neutered males, and he does the putting his head over the back of other males necks thing as well,, which has caused a few scuffles, so now, I no longer allow him to interact with unknown dogs, as prevention is the only way I know how to stop this behaviour. I'm not sure how else to address these issues, so any advice on how to train him how to a) play nicer and b) become more confident in his interactions with unknown dogs would be much appreciated!