If he had been doing well on his food until recently, I would have him checked for parasites at the vet. Ask them to run the ELISA test for giardia, as it can be easily missed on a normal fecal check. If that all comes back negative, I would look at how much you are feeding him. Have you recently increased his food? If so, maybe back off just a little and see if that helps. Is he on a probiotic? If not, adding a good one (Sunday Sundae, Digest All Plus, Dr. Dobias GutSense) might help.