Does Craft do joined calls or multiple ones when fetching the related items? [Element API]
As Robin mentioned in a comment, this is exactly what eager loading was designed for... bringing in related elements in a single element query call.

The above link shows how to do it from Twig, but you can do it from PHP as well: https://straightupcraft.com/articles/examples-of-eager-loading-elements-in-twig-and-php