At that age it may be that he has some baby teeth that haven't completely fallen out and they can smell pretty gross!
Jaxon had 2 baby teeth that didn't fall out on their own, I knocked one out and the vet knocked out the second one (they were not truly attached anymore I would not suggest pulling on baby teeth still attached) it literally only took a little flick and it popped out. The bad breath went away almost immediately.
Anyway that could definitely be causing the bad breath, have your vet check it out.
Good luck!
__________________ Gail and Jaxon |