I've built a library to make vanilla webcomponents reactive via a manual render() call that updates only changed nodes:
https://vorticode.github.io/solarite/
I was planning to improve performance more before announcing it. But even as is it beats React and approaches Lit.js on the JS framework benchmarks.