
I agree with the others that you need to give your dog more to stimulate its mind rather than just its body so provide it with more toys, balls than you can fill with your dogs food are great because the dog has to roll the ball around to get rewarded with a biscuit. Your dog should have been on a good quality puppy food, ask your vet about the best diet to feed it.
Excessive enthusiasm with visitors often occures when the dogs see relitively few strangers, so maybe if increasing the amount of visitors is possible this may help, but normally the problem is that the over enthusiasm visitor. When your dog was a puppy every one was probably excited to see him and likewise for the dog, and he was probaly allowed to jump up to greet people and every one was happy with the puppy's friendly welcome, but now the dog is a great deal bigger its not so pleasing. But the poor dog does not know what it is doing wrong it's always been allowed to greet people in this manner. If you shout and screan at the dog and try to push him down this will be seen as attention by the dog and is actually a "reward" for its behavior. The best thing to do is IGNORE the dog, this is the worst type of punishment for a dog. Stand upright and fold your arms turn away from the dog if it jumps up and do not say a word. As soon as the dog is on all four paws then it can have gentle praise, (just a calm stroke) if the dog jumps up again then turn away and do the same thing. It is important that EVERYONE take part in this exercise. The dog soon learns that it will get more attention if it is an all four paws.
I have done this with various dogs and always had good results, let me know if it works.