The database location is specified in the method NSPersistentStoreCoordinator:addPersistentStoreWithType:. I think apple generates this to be in your documents directory. So you are correct in assuming its in the Documents dir.
On your main question
I'm tending to think it is possible to do what you are saying (theres no limits on core data) but it might lead to not a nice experience for the user as it could lead to your app growing in an uncontrolled way. So syncing might slow up and your app might not be politely behaved for the user.
So I don't think its a good idea as it stands if your power users will have 1000s of photos
Perhaps consider introducing a maximum quota of images that the app can deal with and loading/downloading images from an URL which you would specify as a path.
What about using the SD card as an back up option.
Hmm a lot of work I don't envy you. Mayby someone else has done something similar and they could give you a start.
I consulted the following Previous answers on stack overflow which deal with your issues raised mayby they help you to.
Core Data - Storing Images (iPhone)
Storing photos and videos in Core Data?
App Updates, NSURL, and Documents Directory
CoreData (for iphone) storing images
Storing large (e.g. image/movie) files in Core Data on the iPhone
Size limit of my ios app particularly Core Data
Hope this helps some what.