you're on the right track! having C3PO sit/stay at a distance is GREAT! the next step (that I would do) would be to reward the calm behavior (using high value treats - cheese pieces, hot dog, etc..), and if he exhibits negative behavior, ask for a WATCH ME. get him to focus on YOU - not the dog in the distance. reward, reward, reward when he does watch YOU, and whenever he is calm around another dog.
slowly build up this skill, starting in the distance (as you are), and gradually getting closer - all the while maintaining the calm manner, and rewarding it.
I wouldn't recommend using a puppy as a practice meet/greet, an 8mth old lab IMO is a puppy. I taught my dog this skill by using the dog our trainer provided - an older dog who had impecable manners. puppies don't always mind their manners and can be very unpredictable, which could actually provoke and enforce C3PO's negative reactions.