How much exercise are you giving your dog? Although it is the biggest pain in the ass imagineable at times, two long walks a day is a MUST! One in the morning (BEFORE breakfast) and one in the evening (BEFORE dinner). Toss in a few play sessions of fetch, keep a way, or frisbee a week and you should see a noticeable difference. Also, make sure the walks are structured - ie, YOU walk out the door before your dog, the dog stays on your lefthand side, and does not pull at all. If your dog is too strong to keep under control, use either the Gentle Leader or one of those pinch collars to keep him/her in check.
Also, it is imperative to set limitations and ground rules for your dog and ANY deviations are punished. You absolutely have to be consistent, b/c if a dog gets away with it once they will think they always have a chance and will keep testing you. I have a 9 month old lab, and she gets ornery every once in a while - her big thing is trying to get at food on the table. Usually discipline involves "NO" in a very stern, yet controlled voice. When that does not work, doing a simulated "bite" with my hand or a soft pinch of the skin by her neck. If she starts biting back or fighting me, I pin her to the ground by her neck and will not let her up until she relaxes and submits.
I read the Dog Whisperer's book and it was really helpful.