> but it is ungrammatical and a clear marker that the speaker is not native

You mean a native speaker might be ungrammatical when using their non-native language? That makes sense to me.

> Spain has 'Spaniard'.

Even so, you'll hear a ton of native Spanish people saying "As a Spanish person" or "As person from Spain" instead of simply "As a Spaniard", I'm not sure this is very surprising. If anything, that mistake makes it more likely they're a native than not, in the case of Spain, as the level of English outside of metropolitan areas is lacking at best, compared to other European countries.

I'm using the words 'grammatical' and 'ungrammatical' in a linguistic sense; human languages are subtle and fluid, and one doesn't have to be far along the sliding scale between 'doesn't speak a word' and 'well-educated native speaker' to be understood. We speak of 'broken' English when somebody is able to be understood but hasn't fully grasped the language yet; using demonyms incorrectly is a subtler flavor of the same thing. For example 'no come here' -> 'no entering' -> 'no entry'