In my case the problem with screensaver loading pictures for ever was in damaged iPhoto library.
It contained reference to photos stored on network drive which was not in use anymore.
I tried many tools & methods, but here's two that were helpful in my case:
1. Renaming iPhoto/Aperture library - worked out, but such solution just temporary.
As soon as you connect renamed library to iPhoto/Apperture the problem reiterates.
2. Use iPhoto Library Manager - that's what did solve the issue.
I completely rebuilt library with it and finally fixed all "broken" references.
Whole thing took a long time but it's worth to try.
Just try it