Update: Problem solved!
I didn’t change any slicer profile — I used the default Hyper PETG profile as-is. The root cause turned out to be that Fan 1 (chamber fan) was not enabled in the profile at all, so it stayed at 0% during the entire print.
With the bed at 70°C and Fan 1 off, the chamber temperature slowly climbed and the extruder gears area got warm enough to soften the PETG filament (~75°C softening point), causing it to jam between the gears.
Fix: Simply turn on Fan 1 to 100% at the start of the print (via Fluidd or Creality app). Chamber temperature stabilized at ~33°C and stayed there for the entire print.
Test results:
- 15 min: no jam (previously always jammed here)
- 40 min: no jam
- 1 hour 7 min: no jam
- Full print completed successfully (~4.5 hours)
So the fix is just enabling the chamber exhaust fan in the PETG profile. Creality should probably enable Fan 1 by default in the Hyper PETG profile to prevent this issue for other users.
Thanks to everyone who helped, especially @rdtsc for pointing to the motor/heat issue!