Hi TomC. ,
You need to look at AmbiguousReferenceResolver class PKReferenceQuery and AlternativeReferenceQuery methods. There you will find next line
filterValue = SysQueryRangeUtil::literalFilterValue(_userEnteredValue) + "*";
As you can see "begins with" is hard coded there, so you need to extend this method to add new behavior.