How can I extract from this tar file when my file may be corrupt?
You could try your extract with the -i option to ignore zeros:
The --ignore-zeros (-i) option causes tar to ignore blocks of zeros in
the archive. Normally a block of zeros indicates the end of the archive,
but when reading a damaged archive, or one which was created by cat-ing
several archives together, this option allows tar to read the entire
archive. This option is not on by default because many versions of tar
write garbage after the zeroed blocks.
You could try other versions of tar: gnu tar, star, bsdtar, etc. One of them might handle errors better.
You say your files are all text files, so you should be able to manually edit the file and select each file and copy/paste it to a new file. Look for tar's separator between each file, it looks like a block of ASCII NULLs with the file's metadata (name, permissions, timestamps, etc.) embedded in it.