(a) ist die bessere Wahl. Es stellt den Umstand, den Grund für die Verhaftung nicht zu kennen, als Teil des damaligen Geschehens dar, im Sinne von: "während der Verhaftung, der Fahrt ins Gefängnis und zumindest während der ersten Zeit des Eingesperrtseins nannte ihm nie jemand den Grund".
(b) hingegen bedeutet: Bevor er eingesperrt wurde, hatte ihm niemand den Grund genannt. Das ist das, was der von Dir veränderte Ausgangssatz besagt (mit "hatte"), wäre also dazu die passende Entsprechung. [Es muß für diese Bedeutung zwingend "hatte" heißen, weil eine abgeschlossene Handlung (die Mitteilung über den Grund), die vor einem in der Vergangenheitsform wiedergegebenen Ereignis (das Einsperren) liegt, das Plusquamperfekt verlangt. Deshalb kann der erste Ausgangssatz nicht so interpretiert werden.]
Auch wenn die Regeln im Deutschen für den Gebrauch von Präteritum und Perfekt nicht sonderlich strikt sind, finde ich außerdem, daß der Ausgangssatz nicht die Zeitform wechseln und deshalb besser lauten sollte:
Er wurde in einem Gefängnis eingesperrt, ohne dass er den Grund dafür erfuhr.
Besonders umgangssprachlich könnte man auch sagen
Er ist in einem Gefängnis eingesperrt worden, ohne dass er den Grund dafür erfahren hat.
aber eine Mischung aus beiden Varianten ist keine gute Idee und kann Mißverständnisse hervorrufen.