Let me see if I got this right. So if you have a certain amount at an address and send out part of that amount, EVERYTHING you had at that address is moved out and the change is deposited at a new address? Why isn't the change kept at the original address?
The major reason is to give users better privacy. If there is no change address, someone else monitoring my address will see how much I have spent my bitcoin every time I make a transaction. But if there is a change address, you will only see I have send some bitcoin to address A and some bitcoin to address B, without knowing which of the two addresses is my change address.
Wow.
Imho such privacy implementation, though very useful for some, should not be the default. Maybe a check box could switch between 2 modes. I know that this is not gonna happen though.
Most users, especially the beginners, especially the people with small amounts, don't need such advanced privacy.
I am glad I don't use btc core, I could have faced this same issue, because I also expected the change go back to the initial address.
Once again, I suggest the newcomers use simpler wallets than the BTC core.