When he pulls, stop, make him sit, and then proceed in the opposite direction. He's learn that pulling has the opposite effect than he wants. He's still a puppy at heart, so you'll have to be consistent. Have you done any obedience classes with him? Maybe time for a brush-up course!