Excuse my ignorance, but this seems like the obvious solution to me:
Distribute 1 BCH to each (actual) BTC holder on the exchange, completely ignore margin orders. So shorts don't owe and also longs aren't credited BCH.
Fair and no way to game. Why aren't exchanges doing this?