Jenkins Rerun Old Build with Specific Commit
As a short term solution you can replay you last good build. Read the docs for more information

Update: There is a bug , so the proposed way will work only in multibranch pipeline. So as a short term solution you can convert your job to a multibranch pipeline and to use a replay when it’s needed 

As a long term solution I would separate build and deployment job and store the build artifact in private npm registry. In that way you can always pick whatever version is needed to deploy