I would do in this way:
create 2 new steps- in the very beginning of your JCL
//JS05 exec pgm iefbr14 < delete data set as run starts
//dd01 dd dsn <your file name>
// disp (mod delete delete) unit sysda space (trk 1)
//JS06 exec pgm iefbr14 < create data set as run starts
//dd01 dd dsn <your file name>
// disp (new catlg catlg)
//unit sysda space .................... DCB ..................
Then in that step(s) you want to update this file set for it
//............. disp mod can be also old depending on your logic -
i.e. if you want to add data to what was there - mod if just read or overwrite - old
// unit ....
After abend you will restart from from any step after JS06 and your data set is kept.
In any new run it will be deleted and created in the very beginning of the job.