Cook the bacon strips in a large skillet over medium-high heat until crispy, about 8-10 minutes, turning occasionally for even cooking. Transfer to a paper towel-lined plate to cool slightly, then chop into small pieces. While the bacon cools, combine the softened cream cheese, shredded cheddar, monterey jack, diced jalapeños, cumin, garlic powder, and fresh cilantro in a bowl, stirring until well combined. Fold in the chopped bacon. I like to taste the filling at this point and add a small pinch of salt if needed—the bacon and cheese are already salty, but a touch more can really bring out the flavors.
Lay out all four bread slices on a cutting board. Spread 1½ tablespoons of room temperature butter on one side of each slice—this will be the exterior of the sandwich for maximum browning. On two of the slices (butter side down), spread half of the cheese filling mixture evenly, leaving a small border. Top each filled slice with a buttered bread slice, butter side out, pressing gently to secure. Sprinkle 1½ tablespoons of finely grated parmesan on the buttered top of each sandwich, pressing it gently so it adheres. I find that using room temperature butter makes it easier to spread evenly without tearing the bread, and the parmesan creates a wonderfully crispy, golden crust when it toasts.
Heat a large skillet or griddle over medium heat for about 1-2 minutes until evenly warmed. Carefully place both sandwiches in the pan, parmesan side down, and cook for 3-4 minutes until deep golden brown and the parmesan forms a crispy crust. Gently flip the sandwiches and cook the other side for another 3-4 minutes until equally golden and the cheese inside begins to soften and ooze slightly. Transfer to a cutting board and let rest for 2-3 minutes—this allows the filling to set slightly so it doesn't leak out when you slice. Cut diagonally and serve immediately while the cheese is still warm and melty.