I looked at a vet-med website. They say it's usually caused by either their teeth or a digestive tract problem. Also could be a symptom of something more serious.
Sounds like maybe a vet trip is in order or a change in diet, to something that's easier for him to digest.
Same with people, a bad smell means a condition of something gone wrong in the body.
Be it gum disease or a liver problem the smell can become quite strong.
We had one dog that had a breath smell that was strong enough for us to pull back from. We tried dog breath mints and they did not work.
The Vet was giving the dog antibiotics and charging us a fortune. Poor dog, we ended up paying over $800 to have all his teeth pulled at age 12, then later along came another dog, young at 3 years old that began to smell like the first.
What were we feeding the dogs, good so called expensive dry food. I at witt's end called a breeder and she told me to give my dogs beef marrow bones to clean their teeth at least once a week.
Now these beef bones are expensive and are in grocery stores for beef stock for humans.
Seems to work, My dogs love them and gone is the smell and teeth are clean and only problem is the weight gain from the marrow.
There are products on the market to cause a dog to chew and clean their teeth, but the best I have found is to give them a bone to do what is natural, crunch away at the bone and clean their own teeth as nature intended them to.