Do Not pet him while he eats! This just reinforces that his behavior is acceptable! He will get worse if you do this! Stay calm; I would first make sure he knows that you are the leader in his world. Don't know how you normally operate, but if you have to have a leash on him to start, I'd do that. Make him obey a command before he gets any treats, or his food. The leash will help you keep control over him. I would give him a quick correction, a slight snap of the collar, not to hurt, but to get his attention if he starts to show his teeth or growl. If he obeys the command, he gets the food. I would also stand there. If he starts to growl, I would make sure I had the leash in my hand and give it a smart snap and a stern vocal command, (whatever noise, or sound you want to make, that comes natural to you) I use a AAAccck! sound. I would then walk him away from the food and make him sit. Then I would wait until he's calm, and go back and do it again.
None of my dogs have ever been food aggressive, and that's partly because I always make sure they know I am the boss and the food comes from me. I can put my hand in the bowl and take food out, or put it in, and never have any problem. Don't take the food away from him, take him away from the food. There's a difference, it shows that you are in charge, in my opinion. I would also make sure when feeding treats, that you hand feed and give a command first, and then tell him to take it nicely. Good luck!