Without reference cycles NSFetchedResultsController
can turn its managed objects into fault properly when they are not needed. But with reference cycles, it not, so
I think you should simply avoid strong reference cycles. Usually, there is no compelling reason to have to deal with the problem you describe.
For a detailed discussion, see Apple's Encapsulating Data chapter of the Programming with Objective-C guide where you will find a section titled Avoid Strong Reference Cycles.