Das WAV-Format unterstützt nur 2 GB, da wird der Fehler liegen.
Wo hast du denn diese Weisheit her?
Mal wieder nur halbherzig irgendwo gelesen, was? 
Ein normaler 32Bit WAVE Container wie er da hat, kann und darf bis zu max. 4GB groß sein.
Alles darüber hinaus wird in einen 64Bit Wave Container gesetzt.
Zudem wurde mal wieder nicht beachtet ob man WAVE oder WAVE EX nutzt. Für Aufnahmen von Audio die etwas länger gehen empfiehlt sich immer ein WAVE EX Container.
Ich weiß daher nicht wo du deine Weisheit mit 2GB her hast.
Es gibt aber Programme die lesen WAV Files nicht korrekt aus und begnügen sich dann meist mit einem Teil. Meist ist das dann auch noch die 2GB Marke, weil der Programmierer mal wieder geschlafen hat.
Zwischen 2GB und 4GB machen die meisten Programme einen Umsprung bei der Speicherung, sodass die Datei auch größer werden kann als 4GB. Entweder verwenden sie dann WAVE64 oder WAVE EX
Bei ihm ist aber irgendwas mit dem Header nicht ganz korrekt. Vllt. an Offset 0x20, das die Datenblocklänge nicht richtig stimmt.
Der Umsprung auf WAVE64 erfolgt ja zwischen 2GB und 4GB:
Die 2GB Grenze ist es deshalb weil das die erste größte annehmbare Chunkgröße ist in einem WAVE File. Danach erfolgt für gewöhnlich, wenn die Datei größer ist als 2GB, ein neuer PCM Header Einzugs Tag mit der nächsten Chunkgröße. Und das läuft dann meist in 4GB Takt immer weiter fortlaufend.
Sprich der Aufbau einer WAVE Datei sieht für gewöhnlich immer so aus:
2GB = Header + Daten
4GB Daten
4GB Daten
4GB Daten
...
Rest Daten
Immer im selben Muster.
Die 4GB funktionieren daher meist auch nur bei Programmen die mehr als 1 Chunk auslesen können. Nämlich 2 x 2GB Chunks.
4GB ist das was also eine 32Bit WAVE Datei max. unterstützt. Alles darüber hinaus wird dann in einem WAVE64 Container rein gesteckt. Daher schreiben Aufnahmeprogramme wie DxTory, Fraps und Co. die Headers auch erst zum Schluss, weil es sonst Ungewiss ist welcher Container dafür geeignet wäre.
Und auf 2GB sind nur Programme limitiert die meist nur den ersten Chunk auslesen. Entweder aufgrund das es für den jeweiligen Container vorgesehen war bei der Programmierung oder aufgrund von Schlampigkeit.
Immerhin kann es FFmpeg, als auch MPC-HC es auslesen korrekt.
Es kann ja auch sein das der Header etwas leicht beschädigt war und es deshalb von einigen Programmen nicht korrekt ausgelesen werden konnte.
Die 2GB Grenze kann auch durch Aufnahmen mit einem 16Bit Programm oder Betriebssystem erfolgt sein. Aber bei einem 32Bit Programm definitiv nicht.
Das letzte mal als ich das mit 2GB hatte, habe ich Win95 noch gehabt.
In der Regel sind aber meist wie schon angesprochen bestimmte Programme davon betroffen die nicht richtig die Chunks auslesen dann.
In der Praxis kann man aber folgendes mit Audacity machen:
9h Aufnahme mit 44,1kHz in 16Bit Signed Endian und es in WAVE speichern. Audacity wird es dann nicht mehr einlesen können, aufgrund das der PCM Stream an sich in ein WAVE64 Format hätte gehört Audacity würde dann den Header auslesen, aber nicht die Daten der Samples. Ergo gibt es eine lange leere Spur.
Einfach Aufgrund das es sich schon um eine erweiterte Form handelt.
Da aber @GrandFiredust unter der 4GB Grenze ist, würde es komplett reichen, wenn er mit z.B. FFmpeg den PCM Stream kopiert und wieder in ein WAVE File steckt. Der WAVE Header würde entsprechend angepasst werden und das File wäre somit auch für andere Programme wieder spielbar.
Alles eine Frage wie das Ding gespeichert ist.
Das Gerücht das eine WAVE nur max. 2GB annehmen darf ist totaler Blödsinn. Dies gilt nur für 16Bit Systeme. Und da keiner mehr DOS oder Win95 auf FAT16 mehr fährt, ist das ein Relikt vergangener Zeit.