Why should an attacker want to go back, instead of just being faster than the honest network in producing a longer chain ?
It would allow you to double-spend without controlling the network at the time of the initial transaction that you want to double-spend. Otherwise you need to control the network for the entire time between the first and second transaction.
Why do you say that a "backspend" is a better double-spending than a second spend towards a second recipient ?
It's another person do deal with, and they won't be cooperating with you to improve speed. Perhaps it is not much more difficulty right now, but it will be if this is implemented:
How could a future Bitcoin client ever be protected from the double-spending exploit that currently affects Bitcoin ?
Whenever a block chain reorganize occurs, check if any of the replaced transactions are yours or are being replaced by a version that is now yours. If they are, then a double-spend is almost certainly happening with you as a party. The transaction should then be marked specially and not listed by any of the RPC methods by default. You can also watch memory pool transactions in the same way.
This wouldn't protect against an attacker who can reverse your 6-confirmation transactions, but it would stop the person receiving the double-spend from accepting it and alert everyone that someone is double-spending.