Did not know this. Is there a technical reason it works like this? In Ethereum, for example, if you're sending 0.1 ETH, you will just send that amount (no change address).
It gives better anonymity that way. If unspent change went back to the same address, people would be more inclined to reuse the same address over time, which makes it easier for someone looking at the blockchain to identify who's paying who.
This design makes it simple to prevent double spending. You just check that the transaction inputs are in the set of unspent transactions (UTXOs).