I did try iPhoto Library Manager before posting here, but it told me it couldn't rebuild the database because it was corrupt! Yikes.
Okay, so I did what someone suggested on another thread, and tried to identify all the 80 or so photos that were supposedly 'missing'. I wrote down the name of every photo on a text edit doc.
Then I did something strange that seems to have worked: I went to Spotlight, and searched for one of the image names. I found it inside the iPhoto library. (I'm not sure why you can't navigate to photos from inside iPhoto, but you can from Spotlight - note, you can't find them in any other finder window, just Spotlight).
I dragged the culprit file to my desktop. Then, when the alert came up again, I used File > Reveal in Finder to navigate to the photo...interestingly, iPhoto then pointed to the original location of the missing file...I then dragged the photo from my desktop back into iPhoto's library via the Finder. Voila, the photo was re-linked.
But here's where it gets interesting. Somehow other photos got re-linked, too!
I quit the program, and the same problem reoccurred. So I took the steps again above, but this time I did something slightly different afterward.
I went to the TextEdit doc, and I found each and every photo, and dragged it into an album I'd created (I called it something like "Photos to Fix" or something). I then went to the Trash, and found some broken aliases in there, too. I emptied the Trash, after clicking 'cancel' on each error message. Then, I quit and restarted iPhoto several times. The problem is gone! I then moved the photos out of the "Photos to Fix" album, and the problem has not returned.
In short:
- Find a broken photo in iPhoto, note the name
- Navigate to the photo in Spotlight (not finder)
- Drag it out of the iPhoto Library and onto the desktop
- Go back to iPhoto
- Select "Reveal in Finder" on the broken thumbnail
- iPhoto will go to the location the photo USED to be
- Go back to Finder
- Drag the photo back into its old location
- Go back to iPhoto
- Move that photo, and any other problem photos, to a new album
- Empty Trash if there are any problem files there, too
- Restart iPhoto
- Problem solved
That's what worked for me, though I admit it is wonky and illogical. Maybe someone can shed light on why this worked.