I don’t think anyone has claimed that “democrat” can’t be used as a noun modifier. What has been claimed is that it is rude, and that it is inaccurate (or ungrammatical) in the cases in which it is commonly used.
That it is rude is not, I think, in dispute. Let me explain why it is, in certain instances ungrammatical.
“Democrat” is not the noun form of “Democratic” any more than “congressman” is the noun form of “congressional”. The noun form of “Democratic” is “Democratic Party,” just as the noun form of “congressional” is “Congress.” That is to say, “Democratic” and “Democratic Party” both refer to an organization. “Democrat,” like “congressman” refers to an individual or individuals.
“Democrat majority,” “Democrat legislation,” “Democrat logo,” and “Democrat candidate” do not refer to things that are of or related to individuals who are Democrats, but to things that are of or related to the Democratic Party. To see the difference, consider the analogous phrases, “congressman majority,” “congressman legislation,” “congressman logo,” or “congressman candidate” compared to “congressional majority,” congressional legislation," “congressional logo,” or “congressional candidate.”
But that is not to say that “Democrat” and “congressman” can never be used attributively. If someone sounds like Ted Kennedy or John Kerry, it would be perfectly correct to say (facetiously, of course) that they are speaking with a Democrat accent. (And incorrect to say “Democratic accent,” since you are facetiously supposing the accent is typical of Democrats, not of the Democratic Party.) Also, if a certain style of hat or tie became popular among Democrats, you could say somebody was wearing a Democrat hat or a Democrat tie.
Likewise, you could accuse someone who used lots of whereases and be-it-resolveds of talking in congressman speak, and someone who wore a suit and tie with a flag lapel pin and a campaign button of wearing a congressman uniform.