In order to avoid confusion, this change address is the same as the input address).
This is a terrible idea.
No it is not. Take a look at the flowchart. The way the transaction is constructed does not leak information about which input goes with which output.
For example (fees excluded for clarity)
Inputs:
1) 50 BTC from 1addr1
2) 100 BTC from 1addr2
Outputs:
1) 1 BTC to 1addrX
2) 1 BTC to 1addrY
3) 49 BTC to 1addr1
4) 99 BTC to 1addr2
The change is sent to the same address in order to avoid confuse the user (it was 1addr1 the mixed, or was it 1addrY?).
Anyway, if you *really* want to specify a different one, it is trivial to do that.