I assumed that because Chinese refer to themselves as Asians, that was because they preferred it to "Chinese".
Language is not logical.
Englishman is not offensive,
Frenchman is not offensive,
Dutchman man is not offensive,
Scotsman is not offensive,
Irishman is not offensive.
It seems to be that there is a quirk in the language, because we never say Danishman, Polishman, Czechman, Russianman.
But "Chinaman" is offensive.
China, of course is a fancy variety of crockery, but no one means to suggest that Chinese people are crockery. A Dane would just laugh if he though that he was bing compared to pastry if he was called a Danish. Belgians would perhaps think calling one of their offspring a "Brussells Sprout" was just a bad joke. They would not be offended. They might even laugh.
I suspect that the translation of the word Chinese man and China man in Mandarin and perhaps other languages spoken in China are identical.
Hence, there is no way in Mandarin to distinguish between the two, so as to indicate that an offensive term (Chinaman) has been used.
But Asian would be a totally different word.
Of course, Turks, Persians, Afghans, 100 varieties of Indians, even Israelis and Lebanese are Asian.
So in this case, accuracy is less important than reality.
This is often the case with language. People are offended if you call them a "son of a bitch", but if you called then a 'dog', that is okay. They might like to be called a bulldog. Pit Bull named himself after breed of dog thought of as unpleasant.