Sounds more like a dominance thing to me. I am not an animal trainer but I would start with showing him that you are the one in charge. Look up NILF (Nothing in life is free) on google to get some tips and suggestions. First, I would start crating when you aren't home. Then, when he wants to be on the bed or the sofa, have him WAIT until you invite him! For now, I would make those places strictly off limits for a while. Also, start back with the basics like having him perform a command for food, come in the house last after outside time, etc. I am sure that some of our more experienced people will be along soon to help and offer great advice.
You may want to consider that he is having a health issue as well so a quick wellness check with the vet seems to be in order, especially if this is a fairly new thing.
It will be work for both of you but the rewards are SWEET!