I think I see where you're coming from..
If you could 'muck about' with the protocol a bit, this might work :
In each transaction you would need to but a block hash ID which would need to be in the final chain that this txn is eventually added to. (This has been discussed before as a way for users to vote for their preferred chain. This is not currently a feature of Bitcoin.)
This way your txn could only be added to one fork. Not both.
Then, if someone can show you have signed a txn for a fork chain, you balance on the other chain, goes to zero.
Example :
Bob has 10 btc.
Then there is fork and 2 chains appear.
Bob now has 10 btc on each chain.
Bob spends his coins and chooses 1 of the chains. (By choosing a block hash ID in the chain he wants)
Sam posts Bob's txn on the other fork chain, and this sets Bob's address to zero, by burning the coins. hehe..
Now both chains can exist, without everyone getting double their money. And txns on 1 chain are not valid on the other.
..
ps.. Just thinking out loud really.. can see some timing issues rearing up..
pps.. Just wondering if you could then trade/exchange from 1 fork chain to the other.. hmm..
The fundamental issue about anything like this is that if you can understand all that you can make a windfall, at the cost of some poor small business that didnt
It seems no way to force everybody to run the latest software at the same moment, especially high volume places that might not want to shutdown until the slow time of day (or week)
So any solution needs to take into account that pre-hardfork and post-hardfork versions are running and that there will be bots written by guys that understand the above trying to find the laggards who still honor the invalid utxo
That is why a total shutdown seems to be required to get past not only the +/- 2 hours (4 hours worst case) timestamp tolerance, but migration time.
It could be like Hardfork Saturday GMT (that is the only day of the week that is a weekend all over the world).
It should be really easy to get all 6000+ nodes to coordinate the shutdown and update at the same time.
James