When you remove the has_journal flag with debugfs and reboot, fsck notes that you have a journal but no has_journal flag set. It then removes the journal file, but leaves the inode intact. The next time you run fsck, it notices that the inode is still there, and forces a full check, which corrects this error. I've seen this once, and didn't think enough to try to reproduce it after that. Let me know if you need me to.
Reproduced, and this looks easy to fix. More shortly.
Created attachment 6678 [details] Force full fsck if we remove a reserved journal inode.
Should be fixed in the attached patch. I am currently building RPMs and this will be included in my e2fsprogs-1.20.WIP.sct.20001222 interim release while I sync up with Ted again.