Again, I cannot reproduce. That the list in reply #2 is different is because the random numbers are called in a different sequence, one for the stringlist, one for the memo. That the second list in the last code is different is due to the fact that RandSeed isn't reset back to 5.
Random numbers are absolutely reproducible when you begin with the same randseed - and don't call Random for another purpose in between.
Please post a compilable demo project which shows the issue, instead of code snippets. (Pack pas, lfm, lpr and lpi files to a single zip which you can upload here via "Attachments and other options").