Ну, вам не нужен экземпляр для вызова статического метода:
Type myGenericClass = typeof(Foo<>).MakeGenericType(
new Type[] { typeof(string) }
);
В порядке ... тогда просто:
var property = myGenericClass.GetProperty("MyProperty").GetGetMethod().Invoke(null, new object[0]);
должен это сделать .