Hi pbartow,
As I understand it, you need to combine all of your contacts together as your main contact list. And anyone of you can access the list, also one of you makes a change to the list, then those changes or addition contacts would sync for all of you. If there is any misunderstanding, please correct me.
Based on the current situation, if you add the external contacts in the global address book, the contacts will be available for the whole tenant users, but only administrators can edit the properties of External Contact. Detailed information please refers to the following link: help.outlook.com/.../ms.exch.ecp.EditContact.aspx
But there are two options for you:
1. As I mentioned in my above post, you can share the contacts. Grant full access permission of the Contacts folder to others.
One user can share the contacts in his\her mailboxes to others by granting the Contacts folder permission. You can do this with the PowerShell cmdlet Add-MailboxFolderPermission.
2. You can export a list in your SharePoint team site. Please refer to the following steps:
(1). Export the contacts to a CSV file.
(2). Import the CSV file to your SharePoint team site.
(3). Share the team site to external users.
Note: we can only share the team site to 50 external users.
Detailed information please refer to the following link: community.office365.com/.../579.aspx
Thanks,
Anna Shi