How can I set the requester of an email ticket to reflect the user information shown in the body of a ticket created via email?
The email body is not used in any way to assist in identifying the requester of a ticket. Zendesk uses information from the email headers to determine ticket requester. Specifically, the main way a requester is set is by the reply-to: header flag. If the reply-to: header is not present, from: is used in its place. This functionality is hardcoded into the system and unchangeable.
Agents can use mail API #requester syntax to set the requester on a ticket. For more information, see the article: Using the Mail API to update ticket properties from your inbox.
For more information on email threading, see the articles: Why are incoming emails threading to the wrong ticket? and Ticket threading issues.