Preheat oven to 350˚F.
Heat olive oil in a large skillet set over medium-low heat.
Add the diced poblano and cook for 3 minutes, or until just tender; stir in the garlic and cook for 15 seconds or until fragrant.
Stir in the beef and season with chili powder, ground cumin, salt, and pepper.
Cook until meat is browned, stirring occasionally to break up the beef, about 6 minutes.
Add diced tomatoes and continue to cook for 2 minutes.
Stir in fresh spinach and cook for an additional 1 to 2 minutes or until spinach is wilted. Remove from heat.
Combine the shredded cheeses in a bowl and set aside.
Coat a 2-quart or 3-quart baking dish with butter.
Cover the bottom of the baking dish with a layer of the meat sauce.
Top with 1 flour tortilla and sprinkle some shredded cheese over the tortilla.
Repeat layers, and top each layer with meat mixture and cheese before adding the next flour tortilla.
Finish off by spreading the remaining meat mixture on top and the remaining cheeses.
Cover and bake for 30 minutes; remove cover and continue to cook for 5 to 8 more minutes or until bubbly.
Remove from oven and let stand for 10 minutes; garnish with slices of avocado, cherry tomatoes, and tortilla chips, and serve.