@mattyp Your best option will be to look for trainers in your area, those with reactivity specialists would be your best bet or a behaviorist.
Separation Anxiety/crate training:
Just like with any dog, start small and work your way up. Put him in the crate with a high value treat and go to the next room. Pop back into the room very regularly (every 1-2 minutes) so he knows you are still there. When he is okay with being in the crate and being alone in a room for awhile, work on leaving the house. Leave for 2 minutes, then come back inside. Leave for 5 minutes, etc. This is a slow process, but it is teaching him that even though you have left you are coming back and he doesn't need to be afraid of being abandoned.
As he gets older and wouldn't need to be in a crate (i.e., isn't destroying things when left alone) taking the door off the crate or leaving it open all the time will reinforce that it is his safe place, but that he also has the option to leave the crate when he wants to. Always make sure the crate is a comfortable, welcoming space with a good bed, blankets, toys, treats. Never send to the crate to punish, as it will connect the crate to a bad thing. If you feel you need to crate for punishment, have a separate crate without the extras in a different area that you use specifically when he has misbehaved.
Dog/stranger reactivity:
At his age, and with being deaf, this doesn't surprise me at all. I would make sure when out on walks that you don't let people approach, especially from behind or the side where he may not see them. He can't hear them approaching, so of course he will be startled.
If he seems like he wants to play with other dogs, but gets really loud about it, it could just be that he is a frustrated greeter. My guy plays well with most other dogs, but if there is a barrier between him and the other dog he gets incredibly frustrated and is very loud about it. Work on treating when he sees other dogs, to build good connotations between seeing another dog and not reacting.
Leash Pulling
He's a puppy. Lots of puppies pull. When he starts pulling, stop walking. Make it clear to him that you will not continue as long as he is pulling. If he continues pulling, turn around and head home. My dog pulls, and him and I have reached a balance with what I consider acceptable pulling. When he really wants to sniff something, I let him go in the direction as long as he isn't lunging to go that way. There is almost always some degree of pulling on our walks, but he is a high energy 3 year old lab/pit that is very curious about everything, so I've accepted it. As long as he isn't pulling my arm off and instead just tugging me in the directions he wants to go, I'm okay with it.
If your dog is food motivated, treating when they stop pulling is another good option. You can also "treat-lead" but basically getting them to walk right with you by holding a treat next to you, but not letting them take it right away and instead following you with the treat. Start small and work your way up. If he goes 2 houses distance without pulling, he gets the treat. Then a block, then further, etc. Eventually, he knows that he needs to be staying with you and not pulling ahead. My guy is the least food motivated dog I or his trainer have ever met, so this did not work with us at all.
Overall, he is still a puppy and is still VERY teachable. I got my guy at 6 months and he was in a very bad situation before me. Just know that it takes time. you will get incredibly frustrated at times. You may even get home from a walk and sit down and cry. Most of us have been there. But, when they nuzzle into you for pets and stare at you with those big eyes, you know it is all worth it. Thank you for adopting him, and the best of luck!