"My first thought was to do a MS in finance, but my professors have told me that it would be redundant and to get a MA in economics instead, saying that it would improve my research capabilities. Does anyone have an opinion on that? "
I think this is a good idea especially if you can take more math advanced micro and macro classes, as well as a thesis or RA. More research experience in addition to your award won't hurt you. Maybe MS Finance won't give you such opportunities. MA economics will also allow you to take micro and macro, metrix. PhD Micro at least is required in the first year of a PhD finance program. After the BS finance you should know enough finance and should concentrate on macro/micro, more math, econometrics(if you dont have them already) as oldprogrammer said. I second your profs.
"Another question, I have noticed that most phd candidates in the finance area are international students. Do universities prefer the international quality, or do not very many qualified domestic students apply? It almost seems that because I am a domestic student the top tier phd programs will not want me. Any comment on that?"
No, no, I don't think so. The simple reason IMO is that Americans are not as interested in PhD programs as compared to international students, high opportunity cost, other stuff. There's a related thread in this forum. Your American nationality is by no means a disadvantage, as long as you're as equally prepared as the internationals. In fact, it could be a 'small' advantage in terms of diversity, even though I dont think they finance adcoms care that much about that.