I have never dealt with a fearful dog. I dealt with a people aggressive dog and at home would have been the worst place to introduce people to him at!
My take would be to get him to ignore people, if he does not have a crate get him one, train him to know that it is his safe place, folks come over let him go to his crate end of story. No people giving him treats or balls, leave him alone.
On walks just ignore people, step aside and let them pass, practice treat and ignore, If you stop and converse, stand in front of your dog. Don't let people touch him..."no you can't touch my dog, he's in training!'
Eventually he should come to see people as being of no consequence. You'll know when the time comes, if you practice, standing in between him and people enough ,one day when your talking to someone with him behind you, you'll look and see him behind you and you'll see no reaction to people whatsoever at that point your job is done!
My goal was to not put my dog into situations where he was uncomfortable. So that's what I did and I'm very happy with how he turned out. Today I can let people greet him and for the most part he could careless, he just looks at me. I'm good with that he's not a people loving Boxer!
If you want your dog to actually like people, then maybe a different approach is needed.