If I send all my BTC from wallet_2 to an exchange, using 2 independants transactions like this (feature in electrum wallet I can spend fund AND fees from only selected addresses) :
If all of the bitcoins at an address are sent to another address, it generally indicates that both the sending and receiving addresses are controlled by the same person.
Yes. The solution is to generate multiple addresses on the exchange.
Since the exchange knows who you are, you must trust that they respect your privacy. Reality: they don't.
You could have easily told Person A to send funds directly to your exchange deposit address... and also told Person B to send funds directly to your exchange deposit address. ...
None of the techniques used by the block chain data miners use are perfect. However, they can make deductions with reasonable certainty with enough information. The only way to maintain privacy is to reduce the amount of information or increase the amount of noise.