Am I understanding correctly that if I send 0.1 BTC from Address1 to Address2 the following will be true?
Current
Address1= 0.2 BTC and 0.2 BCH
Address2= 0.0 BTC and 0.0 BCH
Post transfer
Address1= 0.1 BTC and 0.2 BCH
Address2= 0.1 BTC and 0.0 BCH
You have to be very careful here: if your address holds 0.2 BTC in 1 transaction, you can't just send 0.1 BTC, you'll need to send the entire balance. You could send 0.1 BTC back to your cold storage (which by definition is no longer "cold" after this), but you'll need to manually take care of sending the change.
I'll assume your cold storage is a paper wallet. This is what I would do:
Step 1: create a new paper wallet
Step 2: sweep the entire Bitcoin balance into Electrum.
Step 3: send 0.1 BTC to your new paper wallet, and send the rest to an exchange.
Step 4: write this on your old paper wallet:
0.2 Bitcoin Cash
0.2 Bitcoin Gold
0.1 BitCore
This is how I've done it until now (well, not exactly, but this was meant to be an illustration), and I've had no replay problems. Even if that would happen, you would have send it to Electrum, for which you control the private key.
An optional Step 5 would be to split your Bitcoin Cash, Bitcoin Gold, and next BitCore. I've recently discovered
Coinomi on Android works quite easy for this.
Just in case, I always split the most valuable coin first. So Bitcoin, Cash, Gold, and last BitCore. This list will probably get a lot longer in the future...