This is a problem that you are fostering. Your dog is the alpha when it comes to food and he is actively shaping your behavior. Put your dogs food in the dish and set it one the floor in front of him where YOU want him to eat. Give him twenty minutes and take to food away. Do this maybe three times a day even if he doesnt eat it. Sounds cruel but a dog won't starve himself. Eventually he will develope an eating pattern that you decide on and he will also gain trust that the food will be put down at this time every day and he will be able to eat without fight for his food. This is actually one of the most common behavior problems that dogs develope and I have never seen this method of fixing it fail.