Choose related field to update other fields.

We have a module that requires us to link multiple fields from the same module. There are 4-9 contacts and 1-3 accounts related to the module. We need to update fields related to these contacts and accounts, but cannot find a way to distinguish between them. For example, using the formula relate($contacts,"mobile_phone") will only grab the first contacts mobile phone. We looked into the workflows, but can't find any way to update from a different module based on the relationship from a specific field. Even there, it seems to just pull the first one. 

Is there any way to link multiple Contacts or Accounts to a module and update their respective fields?