answering your second post first: I was asked to move all the event filter related code of FairPrimaryGenerator to its own class which I called FairFilteredPrimaryGenerator.
FairFilteredPrimaryGenerator can be used with and without event filtering as it just adds code to FairPrimaryGenerator.
Therefore please try using
FairFilteredPrimaryGenerator* primGen = new FairFilteredPrimaryGenerator();
FairPrimaryGenerator* primGen = new FairPrimaryGenerator();
as explained here.
Does that also "fix" the problem you described in your first post?