I finally decided to to go with UTXO's model because:
It becomes really messy when it comes to using money from multiple Unspent transactions into a new transaction. Then you need to keep the list of "parent transactions" into the new one. There are more user cases when Inputs/Outputs model solves it better.
How is this now different from your first approach?
You now just named it UTXO instead of 'previous transactions'.
With UTXO if we create one transaction - it may have 3 outputs(and more of course): 1. For a receiver, 2. For a sender if he needs charge, 3. Tx with a miner fee
In case of "Unspent transactions" we create 3 transactions: 1. For a receiver, 2. For a sender if he needs charge, 3. Tx with a miner fee
I still cannot imagine all possible cases where such amount of transactions can be a serious drawback.
At least (for "Unspent transactions") it may be more difficult to track history because in case of UTXO we can see 3 operations in a single transaction and in case of "Unspent transactions" we need somehow to determine whether they 3 were created at once(but I'm not it's important)
Also in case of "Unspent transactions" each transaction should contain a reference to a parent TX (the TX which money it spent). Actually this is the same as Input does. So looks like not a big win also.
So looks like UTXOs has a slight leverage here