Technically you only need price feeds in two occasions:
- CDP liquidation
- Once every interest rate adjustment period
You don’t need a quorum of UNI holders voting once every time one of the above things happens, you can use an escalation mechanism: whoever first takes an action that requires providing a price provides a price along with a deposit, then anyone else can challenge them with a 2x deposit, and then the deposits escalate until only past some threshold you do a global vote. This is how the Augur oracle works, and IMO it works quite well!