The way gpgtar is called from Kleopatra is by design slower if gpgtar would work directly on files. Having --encrypt and --decrypt in gpgtar is a fairly recent development. Since werner says that you can both get the same Status lines from gpgtar and could provide any additional gnupg options it should be possible to have this used. With the gpgme_encrypt_flags. I find it a bit ugly to pass through gpgme the filename of the data, but in theory this could be done with gpgme_data_set_filename.
Details might be discussed. Alternatively it might make sense for Kleopatra to don't do the reads by itself but instead pass a gpgrt_stream.