Por las primeras líneas, deduzco que sí, que lo que ha provocado el cuelgue es el módulo de descompresión.
No soy experto en hebras, pero en el mundillo Perl se dice que es mejor no jugar mucho con ellas, existiendo otras alternativas como
Coro y fork().
No he mirado mucho el código, pero si dices que la diferencia entre que funcione o no es justamente la utilización del módulo, pues el problema está ahí, naturalmente.
Te aconsejo que, si no obtienes respuesta aquí, mandes un correo al autor o pongas un tique de
error sobre este módulo,
en la página correspondiente.
Un cambio que sí que veo en el código, es que hay que poner el "use threads;" justo después del "use strict;". Vamos, ha de ser el primer módulo a cargar.