I agree with Folly's place! A good trainer can save you tons of time. A lot of people like to try themselves (yes, I often fall into this category, but I'm lucky I have a classmate interested in veterinary behavior so I pick her brain a lot). A lot of dogs are fear reactive, which tends to seem like territorial reactivity. A good behaviorist will be able to evaluate him and tell you what his behavior means.
One thing that could never hurt to do is pirchase a muzzle and get him used to wearing it. I really like Baskerville muzzles (I bought mine on
Amazon). They are a basket type muzzle that allows you to give treats and the dogs can still bark, drink water, etc. I think all dogs should be muzzle trained because they are such useful tools. It's really not hard to get them used to it but it does take some time. The way I started was by putting peanut butter on the muzzle and just holding it up to my dogs face. After a few days of peanut butter, I would have her stick her face in it on her own and I would give her a treat. I didn't actually fasten the muzzle (other than to check size) until after a week or so. Then I started fastening the muzzle, treating, and taking it off. After a while I would put the muzzle on and leave her with it for a few minutes at a time while I was doing house work. Now she is able to wear it for longer if guests come over. It's great because I can relax that she won't bite someone, my guests are not afraid, and they can give her treats or peanut butter through the muzzle.
You can use muzzles for anything though. Introducing new people or children, introducing a new animal, emergencies (I keep a spare in my car in case I break down), vet trips, etc. if you make putting the muzzle on as fun as possible, the dog will get really excited about it. If they get used to it, they really act like normal while wearing the muzzle.
In the mean time, it may be best to keep him away when strangers come over so his reactivity doesn't escalate. Give him a safe bone or a Kong with peanut butter (freeze it to make it last longer!). Otherwise, every time he is allowed to act out when a stranger comes, he learns that barking and growling will make a person back away and that reinforces the behavior. You do have to be careful with training methods and reactive dogs though. I would stay away from any sort of punishment based training methods. Using punishment doesn't address the problem, it just teaches the dogs not to show his fear by growling or "appearing" aggressive. Instead, many dogs will just start to bite when they feel insecure.