Which is exactly the case. The compiler doesn't know that r.bars[0].baz is of type Model, it knows that it can be of that type, but it can also be a string (or a number, etc).
Union types only have properties that all of the included types share.
You can inform the compiler that you know what the type is:

console.log((r.bars[0].baz as Model).name);

The same error is pretty much the same, the type of r.foos[0].fuzzies is not known, it can be one of the types in the union, so you need to let the compiler know in the same way: