Is the local time on Mailbox1 and Mailbox2 the same, or is it skewed by a couple of seconds ? Since each mail hop independently adds his own time stamp when appending to the header, it might be a reason.
Secondly, check the protocol logs to see exactly if there's any reason being mentioned, particulary if tarpitting is involved. In my experience, it's only in the receive protocol logs where tarpitting is flagged (I'm not 100% sure nor do I have a link
to an article). Even if the mail traffic is internal, by default the "Default <MailboxServer>" receive connector will be used on the servers hosting the recipient's mailbox. On a default installation, these logs will be in %ExchangeInstallPath%TransportRoles\Logs\Hub\ProtocolLog\SmtpReceive,
provided the logging level is set to "Verbose". If it's not, you can set it on both your servers with:
Set-ReceiveConnector "Mailbox1\Default Mailbox1" -ProtocolLoggingLevel Verbose
Set-ReceiveConnector "Mailbox2\Default Mailbox2" -ProtocolLoggingLevel Verbose
You can also check the equivalent send logs on the servers originating the messages. Since it's internal emails we're after, the logging level on the built-in, by default hidden, intra-org send connector needs to be turned up to Verbose, if not already.
As specified by this article, this can be done by running the following 2 cmdlets from an Exchange Management Shell:
Set-TransportService Mailbox1 -IntraOrgConnectorProtocolLoggingLevel Verbose
Set-TransportService Mailbox2 -IntraOrgConnectorProtocolLoggingLevel Verbose
Then try sending another email, and take a look in the send protocol logs on the mailbox server that originated the message. By default these are stored in %ExchangeInstallPath%TransportRoles\Logs\Mailbox\ProtocolLog\SmtpSend as specified
here.