I would recommend starting right now to NOT give this dog ANYTHING unless he earns it. No affection, attention, food, treats, toys, opening the door for him to go out...nothing. He must sit or do a down or shake hands, whatever for absolutely everything. Don't give him toys 24/7. Make them more of a treat to play with for short periods when YOU decide to give them to him. Make him earn the privilege. No furniture privileges. When he comes to you for affection, don't just automatically give it to him. Make him perform something for it.
When you feed, don't give him a whole bowl at once. Stand there and ask for a sit and then toss a few kibbles into the bowl. Ask him to "come/sit." Hand him a few kibbles right out of your hand. When he is gentle, praise him and give him a few more kibbles. Do this for a week. Show him that YOU control his resourses and that his behavior determines whether he gets something good or not.
The next week you could put some food into a bowl. But make him sit/wait until you say, "OK." If he bolts to go to the bowl, quickly pick it up and replace him into a sit/stay. Just keep picking it up until he gets the idea that he won't get it until he sits/waits. Only ask him to sit and wait for a few seconds. Don't frusterate the livin' daylights out of him. When he is "good" while you're standing near his bowl, toss a chunk of cheese or something better than his kibble into it from standing so you won't get bitten. This shows him that again, YOU are the provider of good things and you aren't a threat to him. And furthermore, that his actions have a whole lot to do with it.
Once in a while while he eats, ask him to come and sit in front. (already have his collar and leash on) so you can enforce it. Ask him to sit/stay. Go pick up his bowl and move it to another place in the room and then praise and release him to go back to it so he learns that all is not lost because you're messing with his food.
In addition, I would beef up your obedience training in general. Take him out 2 or 3 times a day (or inside) and practice his walking nicely on a loose leash, sit/stay, down/stay, come. Never ever give a command twice and never give a command that you can't enforce. Make it fun and reward and praise him a lot when he does things right. Be consistant. Teach him to pay attention to you, to "watch me." Eye contact = treat. Obedience training goes a LONG way toward establishing you as the leader or head of the family. This is essential that your dog knows where he fits into your family. And he is NOT going to make the rules. You are. It does not come from harshness. You want your dog to trust you completely but you want him to respect you unquestioningly.
That's what I would try. I'm sure Creature Teacher, when she comes will have some good ideas.