¿Porque no quieres hacer un JOIN? Es lo más natural y lo que mejor rendimiento te va a dar...
Creo que lo que buscas es usar un ORM, eso ya no tiene nada que ver con MVC ni nada, un ORM te permite manejar objetos de forma natural, y puedes hacer cosas como:
Código PHP:
Ver original<?php
echo $noticia->getAutor()->getNombre();
?>
Por debajo el ORM se encarga de hacer el lazy loading que necesite o hacer el JOIN que requiera, pero como te digo eso es independiente de MVC.