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.