Hi, I think that what you are doing is great. When I am out at the park with my daughter, I have no problem with kids coming to say hi, especially if my daughter is playing with them. I do, however, think as you do that asking for things and getting into people's business is not cool. I had this happen to me at the park a couple weeks ago and it was very frustrating. Two little girls not only came over with their dog to say hi and play with my daughter, but sprawled out on my blanket uninvited and proceeded to help themselves to the snacks in our bag. My daughter wanted to share so she got out some pretzels. Next thing I know, these two girls are taking handfuls of pretzels and feeding them to the dog! I had to then take them away. They also threw a fit when I only had one applesauce cup that my daughter had been eating and they couldn't have any. They kept whining at her to share! The point of this, and the worst part too, was that the mom, instead of getting her kids to behave, came over and made herself comfortable right next to my blanket and didn't say a word about her kids horrid behavior! So not only did she not stop her children, but she made it perfectly clear that she saw no problem with the situation.
Anyway, sorry this is so long, but the point is that talking to other families at a park or similar place is fine in my opinion, as long as the parents make sure that their children are respectful of other people and set boundaries. I think that you have made it clear where the boundaries are and he will eventually gain the self-control to observe those boundaries without being reminded.
One suggestion I have is to tell him as soon as you go somewhere what you expect of him and what will happen if he does not comply. Also, try role playing with him at home. Use dolls or action figures and set them up on a 'picnic', then show him how to talk to someone while still respecting their space and when to leave someone alone, like someone with a sleeping baby or who is eating, reading or working.
Anyway, sorry this is so long, but I think what you are doing will work eventually, you just have to keep at it.
Good Luck,
K.