OMG YES!!!!!!!! WHY DID THIS TAKE ME SO LONG TO REALIZE!!!!!
I think I have found the issue on Windows. I think I forgot to clean the path; it is storing backslashes as the path separator on Windows, which is invalid in a zip file which can only contain forward slashes according to the spec. I didn't find the issue on Windows because windows explorer thinks backslashes are fine and shows them as first. Same with other windows based zip archive viewers. Now, I just need to test this issue and I think I can fix it!
Many thanks to Semwize, who sent me some of the problematic ebooks.
And this reliazation is due to my file manager app on android conforming to the spec, and by the mere chance of accidently opening the ebook with my file manager on my phone.
FINALLY I think I have found the source, or at least one part of the source of this problem.