I know how hard it is to say NO to people, but if this was your human child, would you just let any stranger pick them up? Of course not!
It takes a while, but you can get used to saying NO, as I do often. If Yoda is on the ground, and someone comes to pet, that's fine, but if they look like they want to pick him up, I say, please don't pick him up. We sorta run the other way when a child comes too, because children can sort of "slap" and paw away with their hands, which can be a bit terrifying for a Yorkie. As far as picking them up when other dogs come around, it's better to be safe than sorry, and I feel that's a smart thing to do, as there's a lot of dirty and not-so-well-behaved dogs around. There's nothing wrong with picking Sheila up if you are not comfortable with the situation, and one can never really tell how another dog will react to a small cute 2 pound Yorkie!
It's okay to be overprotective, she's your baby! And you definitely want to avoid anything bad that can happen if you can prevent it. We always make sure there's no people walking around a corner really fast because Yoda loves sneaking around corners, and someone walking fast could really hurt him with just a small kick.