I agree with Kimberly's suggestion of dual sit and watch me commands. I used to have a Jack Russell Terrier who was a rescue. She was older when I got her - maybe 8-10, and had never been trained much of anything, especially not social skills or walking on a lead.
I started working with her by taking her several feet off the sidewalk (about halfway up a "normal" front yard), and putting her in a sit, facing away from the passing dog. I tried to time the "meeting" so we were in someone's driveway, but sometimes I had to just walk through someone's front yard.
Once the other dog had safely passed, we would resume our walk.
Once she was comfortable with that (would stay focused on me until I released her), we did the same thing, only facing sideways (so she could see in her peripheral vision). Then we moved up to facing the other dog.
We then slowly decreased the distance from the sidewalk, until she would sit calmly on the edge of the sidewalk and let the other dog pass.
She did fine off-leash as well, but was actually never OK "meeting" another dog while on her lead. But I was able to get her to sit and behave, and "let the nice doggy pass." I would actually use that phrase, and I would say that loud enough for the other party to hear. "Sit, Stay, Be good and let the nice doggy pass." That pretty well clued people in that my JRT didn't really want to play. She would let the other dog sniff her....as long as the feet were still moving. If an owner looked hesitant, I would ask them to please keep walking as my dog is currently in a "training lesson" and it isn't time to play yet. That put the responsibility back on ME, but didn't make it sound like my dog was about to try and eat theirs.
Plus, most people would walk away saying "Wow, what a well behaved dog you have!" which was pretty cool.