The solution to this one's pretty simple if you ask me.
With the pre-$10 plan, gamers bought a new game with the idea that they'd own the content inside the game and would be licensing the use of the servers. The problem with this idea is that the licensing agreement was only meant to be between the original consumer and whomever maintains servers online. Potentially, because the original sale accounted for one single consumer, the publisher/server maintainer could lose money on server costs. In order to account for server costs in a one-time "New" retail purchase would mean the cost would have to increase.
The method EA is using, though, raises the costs to most consumers who buy the game new. How? When these consumers sell the game they purchased, it's now worth $10 less than typical resale is currently, since the person buying the re-sold game, then having to pay $10 directly to EA for the online capabilities.
Why not just cut out the online costs from the initial price of the game? Make new games $10 cheaper, offer a limited trial for online, like they do now for the used purchasers of the game, and then charge everyone $10 for access to online game modes?
Of course, that assumes EA isn't requiring an online connection for content on the disc, and genuinely uses the money to provide online services, but it's a compromise that would be beneficial to most everyone if that's the case. New games are cheaper for those who don't game online, the value of the game decreases in a proportionate manner, unlike with EA's current system. In addition, GameStop can continue their practices as-is, and EA will earn money for their online services.
Not to mention, it'll cut out the whole shady "End-User License Agreement" stuff the consumer isn't able to see clearly before purchasing the game. I'd call the idea win-win-win or win-win-win-win, since I win for having come up with it.