Make sure that your users have a routable UPN. It must not be jonsmi@keyman .local, but jonsmi@keyman .com. Best practice is to make sure that the UPN and e-mail address are identical.
If you have to add a routable domain suffix, use AD Domains and Trusts for that.
https://video2.skills-academy.com/en-us/office365/enterprise/prepare-a-non-routable-domain-for-directory-synchronization#add-upn-suffixes-and-update-your-users-to-them
Don't sync everything in your local AD. Do a OU filtering. Chose Password Hash and SSO. This requires a Custom configuartion of Azure AD Connect
https://video2.skills-academy.com/en-us/azure/active-directory/hybrid/how-to-connect-install-custom
Start with a small number of users.
As to syncing Local Active Directory Contacts. This is supported.
https://techcommunity.microsoft.com/t5/office-365/syncing-local-active-directory-contacts/m-p/94947
--please don't forget to Accept as answer if the reply is helpful--