It sounds like you are doing everything right. However, after reading that he still freaks out when he is approached or visit the vets.
Whenever I try to correct a problem, I look at the threshold of where the dog is at. What is the trigger point for the behaviours. For your newfie, his threshold is really really low. So the slightest exposure to an approach or the vet is like having his past thrust in his face.
What I am trying to say is this. In any given situation where your dog is having a problem. Gradually expose them to the nervous situation. For instance, in an approach. Have someone start walking towards your dog and look for the first sign of their avoidance. Give a signal to the person approaching to stop and throw the treat at the dog then get them to turn around to release that pressure.
You are not thrusting the negative situation on the dog but gradually raising the bar. Repeat the approach numerous times, each time getting the approacher to get a bit closer to give the treat. You will find that each time they should be able to get a bit closer until they are on them.
As for the vet. Use the same philosophy. Drive to the vet, get him out and start getting him to go towards the vet. Look for this threshold. Stop turn around and get back in the car, do a blocky and repeat. Give him a reward for calm behaviour. See if you can get a little closer each time to being inside the door.
Again, gradually raise the bar instead of thrusting them upon the environment or situation where by there is about 100% chance of them losing it.
Other than that, great job...especially for having 4 dogs...lol