The #7 doesn't need to be making 100s, if he does need to then the problems lie deeper than who is batting there as he'd be in way too early (even off 70 balls he'd still need to be in by about over 30)
Swann is capable of lusty blows, making 50s and also digging in if necessary. He bats well with the lower order, and with whoever might be left of the top order, and scores at a decent rate. I don't know what you are expecting from a #7, an ODI #7 is not the same as in Tests by any stretch.
Why keep digging around for this "perfect #7" when we've not found one before and someone like Swann is capable of scoring the volume of runs at the speed necessary for the role.................?!?!?!? What we don't need is someone who mostly makes 5-15 runs and gets out, what we need is someone who can mostly make 20s and 30s. Having someone much better bat than that down the order is a waste and unlikely to come with the necessary bowling ability.
Gotta love the daft nature of cricinfo sometimes, suggesting Bopara could be the all-rounder the ODI side needs
England in India 2012-13 : Ravi Bopara worth bearing in mind | Cricket Features | India v England | ESPN Cricinfo
Focuses too much on ER and not enough on taking wickets. Like the way they cite strike rates and "against Bangladesh" as if that is compelling evidence! An ODI average of 30 is ok, a bowling average of 37 is ok for a sixth bowler. That's not to say he doesn't have his moments, but not enough that a lot of attacks won't just see him as a sixth bowler and that's dangerous to include as the fifth. Swann, Bresnan, Broad, Anderson and whoever would be adequate batting and about our best bowling.
As for the last ODI, how second string was our attack? Finn, Dernbach, Woakes, Patel, Tredwell, Root, which of those is likely to feature in our strongest side?