@Techaltar For a time I maintained my own carddav / caldav server for this, then I got lazy and setup a Google account to manage contacts and calendars, and only that (no mail, drive, etc.)
On my devices, I centralise my mails and calendars through local clients (Thunderbird / K9mail), which - like the contacts list on Android - are able to sync with the Google account. I don't use the web services.
This way, I can send a mail from my Outlook account to a contact saved in my Google account.