Is it at all possible that at one point when you had company over someone may have been mean to him without you noticing, I have one kitty (Mookie) that when he was little a repair man came in and yanked his tail, I went mental and booted him out as quickly as he came in, this was a few years ago but Mookie still is very stand offish when people come in. Some people are just cruel and may have done something without you even knowing. Also you may want to try positive reinforcement, have someone you know well and know would never hurt him come in and toss him some yummy chicken or his favorite treats, do this several times and maybe he will see visitors as a good thing
Best of luck
Bookmarks