Thanks for the responses.
Jakob, thank you for pointing out the one way nature of the feature linked annotation. That I did not know. I'm going to look into the Maplex extension and see if it offers what I need. The other part of my equation is, my client. It's a large oil company and they like to have a lot of control over how we deliver data and maps to them which, as you can guess, can really strict my ability to try new methods to create the maps from the data I am given.
Jim, I like your work-around. Using unique identifiers in a point label for a join is something I've been thinking about attempting. The problem I have is, the maps I produce have a limited scale and I have to fit a crazy amount of labels into some maps, so sometimes I delete labels and use others with leaders to multiple polygons that have the same label. And then I have to contend with the decision makers making label changes after I create the map and the annotation. When they do this, I have to remember to change the attribute table of the parent polygon FC as well and sometimes I/we forget, which is what brings me to find an automated process that will remember for me 🙂
I still like using unique identifiers, I just need to find a creative way to make sure the annotation and database are updated at the same time when a change occurs. For now, I am stuck.