I understand the reason behind why Native Americans are called Indians or American Indians, but why hasn't there been a push to change it? Respected news outlets like NPR still use that term, and so do many books. Why not call them Native Americans or something similar?
Hi, the term is both a legal term of art (f.ex the Bureau of Indian Affairs) and a term that many indigenous Americans use to refer to themselves. For more, you may be interested in the /r/IndianCountry FAQ section on this.
Speaking from a Canadian perspective, the use of the term has largely been replaced by First Nations in most contexts. 'First Nations' is a phrase that first appeared in the 1970s and has gradually replaced the term 'Indian' in Canada. It doesn't include the Métis or Inuit people, who are also Indigenous Candians.
The word Indian is, as you know, a misnomer applied to North American natives based on a misunderstanding of geography and is generally considered offensive for that reason. Canadians at large began to take note during the 70s and 80s when there was a wide resurgence of Aboriginal communities that manifsted in both a cultural renaisance, and an upsurge of political activism where Indigenous communities began using the courts and popular protest to gain a new level of recognition for their Indigenous rights-- rights that were formally enshrined in the new Canadian Constiution Act of 1982.
Indigenous issues remained front and centre in Canadian politics throughout the seventies, and eighties and ninties, with high profile court cases (Delgamuth), land claims (Nunavut, James Bay), and protests (Oka), putting First Nations on the evening news and the front page of the paper with some regularity. This continued in the last years of the century as a Royal Commision on Aboriginal People was released and an Iquiry finally brought the history of Resisdential Schools to light for most settler Canadians. As the Canadian Press, whose style most major Canadian newspapers use, and the CBC, the public broadcaster, were early adopters of the 'First Nations' phrasing, that meant Canadians were exposed to in frequently.
More could probably be said, but so as not to fall afoul of the twenty year rule I will just say that by 2002, the change in terminology was well established.
'Indian' remained in use in two contexts: firstly, where legal precision is needed-- the Indian Act, which dates back to 1867, remains in force (though it has been amended many times) and defines both Indians and Bands of Indians. Since there is no legal definition for a "First Nation" or a "First Nations person", those any staute or regulation that uses those terms needs to first define while they mean-- usually by refering back to the Indian Act.
The second is among First Nations themselves. Many First Nations people grew up calling themselves "Indians" and saw no shame in the word. Why should they be ashamed to call themselves Indians if their grandparents didn't? However, if I can give some practical advice to settlers reading this, it is a best practice to say "First Nations" until an individual actually says to you "It's okay, you can call me an Indian, that's what I am." While some find the word inoffensive, others consider it very hurtful, and still others regard it as something that is only okay for one "Indian" to say to another."
As to why the U.S. appears to have been slower to pick up "First Nation" or "Native American," (if it has been) I hope someone with a specialization in the US can weigh in in more detail, but from my perspective as a Canadianist I suspect that the answer has something to do with the greater prominence of Indigenous issues North of the border: Canada's Indigenous population per capita is much higher than the USA's, and Indigenous people are our largest minority, whereas the black-white divide is the biggest racial cleavage in the US.