have you checked that absolutely the guid is not changing between build and deployment? as this should only occur if both the mac and guid are altering.
I have validated that the GUID is not changing. The only thing that is changing is the MAC. I understand how System Tree Sorting works, is that something that would help in remedying this issue?
I understand that there's a new option in ePO 5.1.1 to modify the system matching criteria (which include MAC by default). This might help fix some of the issues discussed here.
If you have ePO 5.1.1, please take a look at "Server Settings" -> "Detected Systems Matching".
It has the below configuration