He sounds a very nervous puppy. He needs to be able to watch other dogs and people from a place where he can hide, eg, under a park bench, or behind a chair or table. Give him little food treats like kibble from his meal allowance, as often as he does something encouraging. As soon as he shows fear, say ‘good’ see that he looks at you, and treat him. You need to break his interest in what’s worrying him.
Try not to be over protective.
I had a difficult cocker, and luckily was able to go to classes with a trainer who Understood him, and he progressed from hiding, to being star pupil quickly. Being good with people was harder, I was constantly telling people to give him space, no cuddles from children and strangers. He was eventually happy on his own terms, and shy. I won’t go into guarding, I hope you won’t need it.