If you can beat any of them, the best place to level for the elite four is the elite four. Just spend/Mom all of your money after each time you lose and try to keep your potion/revive uses to a minimum. Amulet Coin helps too.
I usually just grind inside Victory Road until i'm satisfied with the levels of my team. If it's your first challenge against them, the pokemon inside will be the highest leveled wild pokemon that you can find until you beat them. The exp should be decent, if i remember correctly.
Yes, victory road for highest level wilds, and rematch trainers are your best bets for quick levelling, you should be able to bomb the elite four unquestioned with a lvl 42+ team, just make sure you have ice for Dragonite and he won't pose too much of a threat, you could outspeed him or take a dragon claw with a high Def pokemon and then ice him down
Gotta love facing 3 dragonites! There's definite potential for clog there, I was caught off guard by that at first as well