It sounds like your library is damaged beyond normal repair. With that in mind you may want to do the following:
Start over from scratch with new library
Start over with a new library and import the Originals (iPhoto 09 and earlier) or the Masters (iPhoto 11) folder from your original library as follows:
1. Move the existing library folder to the desktop.
2. Open the library package like this.
Click to view full size
3. Launch iPhoto and, when asked, select the option to create a new library.
4. Drag the subfolders in the Originals folder (iPhoto 09 and earlier) or the entire Masters (iPhoto 11) folder from the iPhoto Library on the desktop into the open iPhoto window.
Click to view full size
This will create a new library with the same Events as the original library but will not keep the metadata, albums, books slideshows and other projects. Your current library will remain untouched for further testing if so desired.