You are absolutely correct: the activityparty table is a special intersection table. It is tightly coupled with the core Activity record (in this case, the Email), and the platform blocks direct DELETE requests via the API to maintain integrity.
Even as a System Admin, you generally cannot delete a row directly from the ActivityParty table using the "Delete Row" action in Power Automate.
Here is the explanation of why this happens and the two-step workaround to fix it.
Because the activityparty table is a reflection of the To, From, CC, and BCC fields on the Email, the supported way to modify it is to update the Email record itself.
You need to tell the Email: "Here is the new list of people in the 'To' field." Dataverse will then automatically handle the deletion of the rows in the activityparty table for you.
There is a high probability these emails are in a "Sent" or "Received" (Completed) status. If so, the record is read-only. If you try to update the "To" field on a Sent email, it will fail.
You must temporarily reopen the email to modify it.
Please Upvote if this helps.