It sounds like it's a right old mess there. The 'multiple datasets' coming in, are they the same dataset name, if so how can a new dataset of the same name be cataloged if one already exists.
Or, are there different dataset names triggering the same job. If it's the same job then it will have the same job name, so won't run at the same time, but when the next job runs there is no dataset to process. Is that is what is happening? Is the JCL processing more than one dataset, perhaps in a GDG concatenation or something?
Please clarify exactly what the sequence of events are then someone will be able to help. It doesn't sound like a difficlult one to solve but lets be clear abuit what's going on first.