From your description your dog's behavior sounds anxious or fearful. He may simply be going through a fear stage or there could be something else at work. How much socialization have you done with him, especially during his critical period? How often is he exposed to visitors? Does he react the same way to these people when you are out on walks/at social events?
I think you are on the right track with having your visitors offer food and if he is taking it that's a good sign - a dog that is too stressed will not eat.
If you have an agreeable friend you could try doing some behavioral work with your pup.
Have them come in and sit or even lie on the floor and offer him food. You can give him a good portion of his daily diet this way. When he is comfortable with this have them start asking for behaviors - whatever he knows: sit, down, shake, speak etc - and you can start building higher postures and quicker movements. Any change you make that has no negative reaction from him should = big love/treats/play, whatever he likes best. This will build his confidence in them and re-wire him to think that visitors = good things!
If the behavior persists or escalates I would suggest seeking out a good canine behaviorist or a positive trainer who specializes in fearful dogs.
Prevention is the best option. Cat food is too rewarding for you to punish him to avoid it
Can it be put somewhere where he can't get? Like in a cats only room (the litter box can be here too) blocked with a baby gate, a laundry room only accessible through a cat sized door, or a counter too high for him to reach?
As for the horror stories, it is my experience that puppies raised with cats do not have any issue with them.
Just set boundaries of acceptable behavior and re-direct if the dog gets too rough.
Hope this helps