Have you settled on one food for a long period of time? Switching around a lot can cause that. I'd switch to a simple lamb-and-rice kibble and keep him on that for at least a month, and see if his tummy settles down at all.