You are correct that currently PennController only tries to download the ZIP archives once. Duplicating packages seems the simplest way to go, and it shouldn’t make the program crash: it will just use whatever resource it finds first, so if two resources from two zip archives share the same filename, it won’t matter as long as they’re exact copies of each other.
Splitting your resources in multiple zip packages involves a subtle tradeoff, since the more packages you have, the more requests to the server, hence the more opportunities for a request to fail. Besides, some browsers (eg Safari) and some servers don’t like processing a high number of requests at once, so if you are requesting many zip archives this can also cause problems. Actually one of the arguments in favor of zipping your resources is to avoid a proliferation of requests for every single resource.
I’ll see if I can improve things on that front for future releases of PennController