I started having bad breath about 3 years ago. Around that time, I started getting a lot of phlegm in my throat I had to clear constantly all day long (still having issues with it, but it's a bit better.) Post nasal drip was also an issue, so I think sinusitis was to blame for all of this.
So I think this might be a case of tonsiloliths (tonsil stones) that hide in the cavernous folds of your tonsils. I got a ton of these out over a two week period and found they were the cause of the odor coming from my mouth (thought it was from back down in my throat, but I was wrong). Supposedly it's a combination of white blood cells, mucus and trapped food particles. They're usually white/off-white and stink like crazy.