I read that when you sent bitcoin to someone the output you are sending is the balance of the input you receive last.
Good non-custodial wallets such as Electrum allow you to select which inputs you want to spend from. It's a feature that was already mentioned in this thread and it's known as
coin control. You control and decide which input to spend from. Therefore, you can select the first, the last, the smallest, or the biggest input in your wallet.
Consider the example of taking a $20 bill out of your wallet to pay for a $5 cup of coffee. You would give the $20 to the cashier, and the cashier would give you back the $15. While the $15 belongs to you, it is not available for the time it takes the cashier to give you back your change
The comparison with individual bills is a good one. Each time someone sends you bitcoin to your personnel wallet (not an account on an exchange), that becomes a new bill that you have. The amounts don't matter, each transaction is a new separate unit.
But if am using my ordinary fiat wallet and I use $20 to pay bill and I still have other dollars in my wallet I can use them to buy other things before my change will come. Why is bitcoin spending different.
Again, it depends on how many UTXOs (bills) you have in your wallet. If you have multiple, you can spend one of those while you are waiting for your $20 UTXO to be confirmed on chain.