1- UTXOs are essentially input (such as amounts of Bitcoin) that lie around in your digital wallet (unspent) until you decide to send these amounts to someone else, or purchase something with them. Once you’ve spent a UTXO, it becomes input for the person you’ve sent it to.
2- Well, since your wallet sends queries to the blockchain to ask whether or not there are enough funds to carry out a particular transaction, if the blockchain says there are not enough UTXOs for the transaction, it won’t be able to go through.
3- Well, the fee is always (Input - Output), as proven when I went to the bitcoin explorer on blockchain.com to do the calculation! However, some wallets allow you to choose the fee yourself. When the wallet constructs the fees, it does so in a way to get your transaction into the blockchain as quickly as possible.
4- Since our wallets add all of the UTXOs to show us our balance, not necessarily breaking down each transaction (and multiple amounts could have been sent by multiple people), how could we tell who is sending what?