Mike - you could take advantage of conditional form processing, but it might require having a contact field as a value holder. Here's my thought:
Your first processing step will only create a contact if it is net new. This is done with the following condition (making sure that the checkbox at the top is unchecked):
Basically, this processing step only runs if the email address submitted on the form doesn't already exist in the database.
On this processing step, I have a hidden form field that I am mapping to a contact field called "Net New from Form Submit?". If it is a net new contact, I am setting that field to "yes". Your second step updates all other contacts and third creates your data card. The fourth processing step is where you can then update a data card field with a value that can then trigger your data card service (ie. field named "Send Email?" gets set to "Yes"). This step is set conditionally as follows:
This step will only run if the contact that submitted the form (Email address exactly matches form field Email Address) has a "Net New from Form Submit?" value of "Yes".
The fifth processing step then clears out the "Net New from Form Submit?" field, so that no other data cards will be created that trigger the email being sent.
I'm sure there are other ways to accomplish this, but this was the first to pop in my mind. Hope it helps!