Not confusing at all, when you have 10 bitcoins in your wallet/ address and if you send 1 bitcoin to other addresses you get 1 bitcoin going out from your address and you'll get 9 bitcoins going to the same address, bitcoins don't sit in addresses like you'd expect them.
So when you spend bitcoin either spend all of which is in the address or any remaining amount is sent back as a change and is a public information nothing confusing.
And it's an automatic process.
This is not technically correct because there is no such thing as "bitcoin" to send/receive/spend, that is a term which is used wrongfully and to make it easy and equivalent to money I suppose.
What exists are transactions or this: 3a68bda3575f762ddf89176d7a35f4aa5c95e7915cb0aa181428f94690807b89
This is just a layman term so that non technical people will easily learn about the scenario where bitcoin transaction is created,
What op sees is that person spending this output 074e2012b765b0495f69ee997426ec8908995afca245d2aad27f948b77f9549b
and creating this new one: 3a68bda3575f762ddf89176d7a35f4aa5c95e7915cb0aa181428f94690807b89
So what do you call the Bitcoin that were moved to other address? Aren't they sent? or spent?
Always the last output address is one of the input address
This is not correct.
There is no need that the last one be the same address. It can even be a new address, or it can be the first, second,...
It is in some point correct if the private address was isolated and imported to another wallet that has no other addresses. The process is automatic and any excess on the transaction sent will always sent back to the same address that created the transaction.
In a normal wallet where there are lots of address available it is correct that the excess BTC will be sent back to any addresses that is already on that wallet.