What is the best way to have a lookup that supports creating a new record if one isn't found?

One problem is that in your popup, your table has a model of Lenders, but your action updates the row(s) on a different model, NewSubmissions2, so that’s why it’s updating all rows with your Lender Id.

Do you have context condition set on your Lender table in the popup, for Id = Lender__c of row in context? Not sure that will help

In my example I was using a detail page, only had one opportunity to deal with. But with your table of unsaved NewSubmissions it’s a little trickier. I’ll play around and see if I can figure it out.