Note to self: I switched over to doing the same thing in C++, no python, using Editor Scripting Utilities, and the same thing is happening. I am calling
FScreenshotRequest::RequestScreenshot(MyPath, true, true);
from inside a for loop in C++ and I only get the last screenshot that is requested. It seems like the screenshot is taken after the function call is ended.