I have never thought of the Elite 4 as "End Game," just as I never though of hitting level 60 (and later 70, 80, 85) as "End Game" in WoW. Rather it was just another stepping stone. Because of this attitude, I optimized very differently.
First, I found that 3 Pokemon was about the sweet spot for training at a time. Usually this entailed 1 or 2 (xp share, or swapping) I was focusing on, and a third for backup (someone beefy enough to roll whatever area I was in).
Next, I specifically targeted Pokemon whose EVs I could easily raise. There are a couple areas where you can guarantee which EV you'll get, but usually I lead with a Pokemon whose EVs I didn't care about, and then swapped according to what I ran into (in the case of trainers I could set this up more intelligently). As a result, I was usually targeting only 1 or 2 for actual EV leveling. This process would recur every time I got a Pokemon whom I wanted to level (I usually decide these at game start).
Once a Pokemon had been EV leveled, I could then use it as a clean up for other Pokemon's EV leveling. From a pure XP perspective, having a "clean up" Pokemon (sometimes initiator) means that that Pokemon will be receiving more than its fair share of experience. The end result is that usually the Pokemon that I EV train first end up being my strongest (not just because of EVs).
Finally, as I originally stated my end goal is not the Elite Four; rather I'm eventually targeting competitive play. However, EV training other Pokemon doesn't max out my first couple, so ultimately I end up doing runs on the Elite Four to power level them fast. Usually, by the time I hit my first run I have 4-5 beefy Pokemon fully EV trained, so it's not a major challenge. However, sometimes I haven't spent enough time and that usually means I need to take the time to EV train up a couple more Pokemon so they hit that sweet spot where they start firing on all cylinders.
I realize this may not be exactly your use case, but I think it is something to keep in mind.