Apparently the native tar commands is not perfect and has bugs. It is recommended that using -i (ignore directory checksum errors) flag will resolve this but it did not in my case.
Using GNU tar solved my problem. Simply use gtar instead of tar and it works like a charm. So the commands are like
gtar -cvf $TAPE_DRIVE $BACKUP_FILE
and
gtar -rvf $TAPE_DRIVE $BACKUP_FILE