Use of the term Indian is considered rude in Canada where "First Nations" is widely accepted as the preferred term. However, Canada did previously use Indian, such as their law known as the Indian Act. The term "Aboriginal" in Canada has generally replaced Indian in legal and formal contexts outside of the Indian Act to inclusively refer to First Nations, Métis, and Inuit peoples collectively.
In the US, American Indian, Indian, and Native American are all used. Among younger indians NDN, and Skins are popular endonyms. These terms probably should not be used by those who are not Indian themselves though unless they have been given the go ahead, any more than one would use the term "homeboy" inappropriately.
In both US and Canada indians generally prefer the names of their nation when dealing with issues specific to a particular nation or their own culture. But there is also a need for a term to distinguish indigenous peoples of the americas collectively, hence Indian, American Indian, West Indian, and First Nations.
Why do we use an english word? Because there are hundreds of different indigenous american languages represented. English is now a commonality in the US and when we use the term we often do so when we find ourselves speaking the English language to someone. Historically, there was no one term used by all nations that had the same sort of meaning. Many of our native languages don't use any term exactly like "indian" in meaning. However, in many native languages of what is now called the United States, our own word to collectively refer to the original peoples of Turtle Island, distinguishing us from the invaders and occupiers (sometimes called white men), is red man, red skin, red person. So that would be the most appropriate sort of term were we to use something with an indigenous perspective. Unfortunately, these days there are some activists claiming these traditional concepts are bad. So it is quite common to find whites tell us that redskin is racist, to tell us that indian is wrong, and to tell us that we are all natives, including them, the illegal alien white occupiers of and squatters upon our sovereign lands.
As far as the term "Indian" is applied to the many various peoples groups east of the Indus River Valley, that term used with them is a european construct as well. It was not used by people in that area to describe themselves until european colonialists and occupiers arrived and promoted the term. So to say it is correctly applied to people from that region, but not to us is a claim that comes from historical ignorance.