Finally, I found time to try etesync. It offers end-to-end-encrypted synchronization for contacts and the calendar, can be self-hosted and both server and clients are open source. (Nextcloud now offers end-to-end-encrypted synchronization of files, but not for contacts and calendar)
I now use it to synchronize the calendar between my Android phone and Thunderbird, and run the server on a virtual server from Strato (RPi should also be possible). As before when using Nextcloud, I use DavDroid on the phone, the Lightning extension for Thunderbird, and server certificates from letsencrypt. My phone's contacts are synchronized with the server to have a backup, but I did not try contacts synchronization with Thunderbird.
Everything seems to run smoothly, and the installation was pretty straightforward, so I think I can recommend it!