Afaik Jenkins jobs are atomic by default, you can split those sequential steps in a list of downstream jobs instead. If the UI is a bit cucumber some you can configure your jobs based on the configuration as code paradigm (JobDSL, Jenkins builder, Workflow...)
Jenkins workflow does provide a restore point feature, but I haven't used it yet so maybe someone else can provide further details.
There is a plugin to rerun a flacky job or something like that but probably that's not your case.
I hope it helps
Cheers