Reprimanding him in the presence of another dog is not positive reinforcement training. What you're doing is associating punishment with other dogs. That can suppress that behavior temporarily but it won't reduce his anxiety or excitement (whatever it is he's feeling) around other dogs. It won't change his feeling about being close to other dogs. It can, in fact increase or escalate that behavior and turn it into something worse at some point in the future. So, if you don't see something like that coming, I would recommend that you just keep walking and don't do anything. Keep working at other times on making positive associations with other dogs...at distances where he isn't lunging or barking (praise, high value treats, games etc) and avoid up close encounters when possible until he is more reliable at distances with lower levels of the stimuli that triggers this behavior. If there are some dogs he knows well that he likes to play with off leash, keep doing that too as long as it's safe and all the dogs are stable and get along.
It sounds like he's doing much better and that is good. But it's often an ongoing thing you have to practice. "Watch me" is good. You can also transition that into "watch the other dog," then look to me and you get a fantastic reward. But from a distance, gradually decreasing the distance. You want him to think that when he sees another dog, it represents, not a reprimand, but something very, very good. Then that lunging....reacting will subside.