Well WebDav/CalDav/CardDav works quite OK. Baïkal is trivial to selfhost (cal+card) then you just pick some webdav implementation like KaraDav/PicoDav/FlyDav and you are good.
Email is really the one that requires lot of caring about so not easy to self host.
Email is really the one that requires lot of caring about so not easy to self host.