I've been struggling with the same problem. Large tarballs become pretty much inconvenient for storing large backups that you only need partial access to (e.g. to extract particular files or directories).
Nice solution that I found is called SquashFS. SquashFS is a compressed read-only file system for Linux that can be used to create browsable and portable backups as well. To access and browse contents partially one just needs to mount SquashFS image and browse it like an ordinary filesystem.
Squashfs is intended for general read-only filesystem use, for archival
use (i.e. in cases where a .tar.gz file may be used), and in constrained
block device/memory systems (e.g. embedded systems) where low overhead is
needed.
From here: https://github.com/plougher/squashfs-tools/blob/master/USAGE
What is also nice about SquashFS is that it's a modern solution with support for multithreading. It shows quite an impressive performance when creating an image compared to targz-ing single-threaded.