Is there a way of changing container field behavior so that minor file modification does not create the link to be lost?
Are you referring to the DAM program making changes or are your users making changes to the files? In either case, don't change the files while they are in this folder. Create a copy of the file or files and modify them there. If this is by your users, export a copy of the file from the container field, edit it and then re-insert it into the container field. For you DAM, I'd copy the entire folder to a different drive and run the DAM on the copy.
Is there any way to relink all 3000 image files other than manually?
Possibly. You can use the Folder option for Import records to import all of the files back into a table in FileMaker. WHen you do, you can populate a text field with the file names. You then may be able to use the file names and a script to re-link your re-imported files to their original records. But this assumes facts about your database that may not actually be the case.
Followed your suggestions:
Added a text field with the file names. After a bit of work in Excel to make certain that the record ID's matched, I was able to re-import all 3000+ images. Huge savings of time and frustration!
The DAM program now writes metadata on its own copy of the image file folder.
Decided to return to embedding the images directly in the container field. The files are low-resolution jpg's, so there isn't a storage/performance issue. No more strange duplicates or missing files now.
Thanks for your help.