Возможно, но для этого надо вмешиваться как в процесс доступа к архиву, так и в процесс сжатия. Вот примерно так.
ZEXTERN int ZEXPORT deflateParams(z_streamp strm,
int level,
int strategy);
Штука в том, что ключевые байты надо держать несжатыми.
UPD. Если хотите, чтобы не нарушать NDA, я возьму что-то общедоступное вроде Zippy и попробую написать прототип. Но только если хотите.
UPD2. Блин, забыл про CRC! Его тоже придётся как-то пересчитывать.