You could try combining the !Gate with something that enables the gating for a limited time, for example
{(!Gate countTriggers lt: 5) /\ !Gate) triggerEvery: ?NumberVoices offset: ?VoiceNumber - 1}
is saying "gate only when the number of gates has been fewer than 5 AND there is a Gate signal".