[MSBuild] Avoid unnecessary project reevaluation

Avoid unnecessarily re-evaluating MSBuild projects multiple times by creating them with the global properties already set.

Difficult to test performance since it's extremely variable.