Seriously. Japanese subways are spotless, and they don't smell. Of anything. The cars are clean, the tracks are clean, the tunnels are clean, even the restrooms are clean.
Why? Because they actually hire cleaning staff, and give them the time necessary to do their jobs.
Drinking in public is allowed in Japan, but mostly, I suspect, because people don't actually drink in public. It's more along the lines of, "not banning something nobody does" than "tolerating something that's annoying."
As for food smells in stations, probably the most common in Japan is sweet breads and pastries being baked, oddly enough. Nobody complaining about that one.
I make the comment about cleaners never having been to Germany, but being well aware of the shocking disregard for basic public cleanliness everywhere in the US. Cleaning is maintenance, and maintenance doesn't pay the bills.