Short answer: No its never too late.
People rescue lost links in this way all the time. The old pages may not have been de-indexed yet especially if there are being linked to from another website.
Ideal solution: Locate all the links pointing to old pages and get them updated to point to the new page. Put the 301 in place anyway to save any you miss.
Nearly ideal solution: Slap a 301 redirect on it - BUT make sure that the 301 is to a direct replacement / relevant page.
There is no negative implications for doing the 301's this late... (as long as the pages are relevant). But not doing them... well as you have seen... rankings will suffer.
Ive seen links that are months to years old get rescued this way, so get them redirects on!