The behaviour you are seeing is not because the field is retrieved through a LEFT OUTER JOIN it is because the field is NULL
NULL in SQL does not behave like any other value
If a and b are both NULL then a = b is false. Thus when comparing for grouping access sees all the NULLs as different values
In this case if you want to use TOP you could exclude the NULL values by adding
WHERE tblRegion.Region IS NOT NULL