What's an efficient way to do this? I was going to write a Python script that just loops over the N files and divides them into t folders, and then calls tar in each, but this feels very unoptimal. I have many cores on the server and feel like this should happen in parallel.

using zsh to create lists for tar

Hope I understood what your trying to do. t=731 was just a number I picked out of the air. Hack as needed. The following creates multiple files with t file names or the last file with the remaining file names if not equal to t.