Hi! Late reply, I only found this thread now.
You wished someone would make a modern standalone web app for this. I've been building one for the contacts side: it edits cards on a CardDAV server, tested against Radicale, Xandikos and Baïkal. It's contacts only, no calendar, so it doesn't fill the CalDAV gap you described (I agree that part is much harder), but for contacts it gives you a full editor in the browser !
There's a demo with made-up contacts if you want to look: https://demo.natel.app/contacts Code (MIT): https://github.com/KewinDousse/natel
It's still beta, so feedback is welcome.