agreed! UTXO set root from the *prior* interval is the best way to go. the whole point is it's supposed to be old, safe beyond reorg and for lightweight sync with no centralized checkpoint producers.
i do think that incremental-hashing can be used to speed things up a lot.
Merkleized, Merklix trie, or an accumulator like Utreexo: you can maintain the root incrementally by only touching the leaves that correspond to changed UTXOs
should be very fast, not heavy at all