Assuming I received 0.01 BTC, 0.3 BTC and 0.007 BTC on my wallet. That means 3 UTXOs.
Well I think there are some factors to consider before you count each receival as a UTXO. First they should be to different addresses. I know address reuse is not advisable but literally all campaign participants are mostly guilty of it because they use a single address for a long time.
Campaign participants received Bitcoin on the same address because there is no way to change address for new payments, it's going to be a tedious work for managers to be asking for fresh address, changing them on spreadsheet is going to slow down payment, the manager has to wait for everyone to update there address before payments can be sent, imagine doing this all the time.
The simple solution is silent payment address, this helps generate new address for multiple payments, the manager doesn't need to sent payment to new address and doesn't need to ask participants and the transactions will appear independently on new address of the recipients, this way signature participants doesn't reuse their address and doesn't have chunks of utxo on a single address.
However, most wallets doesn't support silent payment yet, just few of them are out there.
Those receival pile up to one big UTXO that only gets split when you try to spend from it because of the use of change addresses. Same way UTXOs also get consolidated to one big one when you try to spend. I think Obim34's post explained the whole stuff in more detail.
Basically, when you spend the total utxo from an address, the address doesn't return any utxo as change but when you spend small from the chunk balance, everything get spent and the rest return as change to another address like you said but if the wallet doesn't not have a change address, the rest of the utxo as change are sent back to the same wallet address.