We have a product called CLR that will remove rust staines from the bathroom. You should be able to find a similar product. Make sure it is one that says on the bottle "won't harm your pipes", that way you'll be sure it won't eat any of the metal on the grille.
You can buy some zinc phosphate from Bill Hirsch or Por-15, they sell it as "metal prep". It will remove the rust and etch the metal in preparation for painting. I would talk to company to make sure you can use it on the grille and how much you should dilute the stuff.
The top of my grille was copper so I used a copper polish to clean it up. I'm not positive what the little viens were made of.
Brian