Hello:
There are times that a bone can be broken without visual evidence such as when a fracture has occurred. I am guessing that you aren't aware of him being injured when he was out but the possibility exists. With this there are several things that only your vet will be able to help you with.
If he was in a fight he could have a puncture would that hasn't been noticed and infection is taking place it. The infection will generate pain and cause the limping.
Being in a fight or being injured could create fractures or spinal cord injuries that aren't noticible with the naked eye; however, they are serious and need the attention of a vet.
He could be developing arthritis and the vet will be able to give him antiinflamatory medications for this.
It is possible that he has a condition that is known as gout. Gout causes intense pain in the joints annd is controlled by diet. Your vet will be able to prescribe a diet to prevent him from having flare ups and pain medication to get him through the times that he does.
My apologies for so many possibilities but he does need to see his vet, especially since he isn't eating as usual in the last few days.
If this information is helpful to you then please do ACCEPT. Let me know if I can help you further. Good Luck and Best Wishes to your little one!
Terri L. Romaker