1) We asked one of our resources to place the script on the page with step 2 instead of step 1. We are observing that for the time being.
That will not work. The forms need to post with either the same cookie value or the same email address, or the form submissions will not be associated with the same lead.
2) I looked into the query parameter - but since it's an external URL I'm getting some errors just trying to work within the interface. I'd be curious if there was a workaround.
Non-Marketo URL or Marketo-hosted LP, doesn't matter. Query params are populated on any page, there's no preferential treatment given to Marketo LPs.
You set up a form field with type = Hidden and Auto-Fill set to read from query parameter Email. So if you add the Email (in a Forms JS API onSuccess event listener) to the Thank You URL for Form 1 (the Thank You page presumably being the page with Form 2) then Form 2 will populate the hidden Email field.