Well...I'm very hesitant to work with multiple image files instead of a sprite sheet because it significantly slows an artist's workflow. I'm sure it is easier to program, but there are a number of downsides to image files.
1. If you decide you want to work in a size other than the default, you will have to go through each individual image and resize it. With sprite sheets, you can resize the image and it will update all of your sprites.
2. If you work with indexed color, you will manually have to go through thousands of images and apply your custom palette to each. With sprite sheets, you can update the palette of a single image and it will simultaneously update all of your sprites.
3. When you are open/saving files, you have to navigate to the file location for each file you want to find. With sprite sheets, everything is in the same file and you can see everything at a glance.
4. If you wish to use a resizing algorithm like hq2x or xBr to create higher resolutions for your graphics, you will have to go through each image and apply it. With a sprite sheet, you do one resizing operation and you're done.
With that being said, there could be a compromise. A long time ago, I did some graphical modding for UnNetHack (A NetHack mod). The vanilla game handles everything in a sprite sheet like
this but the modder designed UnNetHack to handle hundreds of separate image files. So I did pretty much what you said...I worked in a big sprite sheet, then wrote a Python script that dumped everything into separate images. For TWBT, there could be a sheet image in the uppermost directory and a small executable that splits the image into the files. The only problem with this approach, though, are the aforementioned animations. I'm not sure how those could be handled.
Alternately, I'd suggest an organizational approach like I did with
DawnLike, which had a huge number of animated sprites. Categorize all of the images into smaller sheets, and append a number onto the end of a filename if it's part of an animation. Some image-editing programs like ASEprite will even automatically turn that into an animated .GIF you can preview.
EDIT:
Oh! I've got an idea. For the first approach, you could have have a bunch of big sheets like Master0.png, Master1.png, Master2.png, etc. When you run the executable that splits the image up, it checks in Master1.png onwards if there are more frames for a tile. If the extra frames are transparent, the executable throws them out and snips the animation to a shorter number of frames.