Just to be clear, let me reiterate that CheckPreloaded will check that the resources have preloaded: it will not initiate or force any preloading. So resource preloading is unaffected by how many CheckPreloaded commands you use in your script. All resources start preloading as soon as your experiment page opens.
You say that “Other times, they are downloaded but then the necessary files are not preloaded”: if the zip files containing all the resource files for a trial were successfully downloaded, there should be no reason for that trial to insert a preloading screen at all.
Would you mind sharing the link to your experiment with me, either here or at email@example.com?