Drupal 8 MVC: is there a Model?
Your data-fetching logic should be in its own service(s). 

Symfony and by extension Drupal are not traditional implementations of the MVC architecture as there's no separate Model layer, like for instance in CodeIgniter.

One of the most important features in Symfony and Drupal are services, which are (or should be :p ) independent and reusable implementations of various functionalities.

So if you want data-fetching logic, then you can create your own service that does that and use that service in your controller, instead of polluting it with the queries (entity queries or otherwise).

I'll leave with a comment from Fabien Potencier (the creator of Symfony):

"It's up to you to create your model by hand or use any other tool, like an ORM" [...]I don't like MVC because that's not how the web works. Symfony2 is an HTTP framework; it is a Request/Response framework."

This statement might be debatable, but what I want to show here is the intent behind the choice of leaving out a well defined Model layer.