You know what would fix cheating (or at least successfully address it) for MP games?
User rented servers where the admins can ban people as required. Imagine a server named BluesNews 1 for BF 2143. JerkAss decides to cheat or is just a total jackwagon.. banned IP.
Then the admins on BluesNews 1 tell BluesNews 2 "ban this IP" .. he's gone from ever playing there as well! A user-generated ban list for cheaters and jerks.. private-hosting of games once again!
A real server community! "hey guys, look, Bob is here! Hi Bob, how's the kid?"
in a boys dream...