"Ich bin ein Berliner." is perfectly acceptable for anybody here in Germany who doesn't have the Duden stuck up their butt. Seriously. It may not be grammarically correct but 99% of Germans would seee nothing wrong with that. The only problem is that news reproters allways want to report on a gaffe and the like so of course up to this day we hear this nonsense.
Actually, the unofficial Prussian anthem (you don't get much better pedigree for correctness in terms of empathetic declaration) begins with the words: "Ich bin ein Preuße, kennt ihr meine Farben..."