For the meatballs:
1/2 medium yellow onion, very finely chopped
1/2 cup panko breadcrumbs
1/4 cup finely chopped fresh cilantro
1 large egg, lightly beaten
3/4 teaspoon fine salt
1/2 teaspoon chili powder
1/2 teaspoon ground cumin
8 ounces ground pork
8 ounces ground beef
4 to 4 1/2 cups green or red enchilada sauce, homemade or store-bought
4 submarine sandwich rolls, split
2 cups shredded Monterey Jack cheese
Fresh cilantro leaves, for garnish
For the meatballs: Mix the onion, panko, cilantro, egg, salt, and spices together in a large bowl to form a paste. Add the ground meats and mix gently with your hands until just combined (do not overmix or the meatballs will be tough). Form the mixture into 20 meatballs (about 1 1/2 inches wide) and place on a large plate or baking sheet; set aside.
To finish: Heat the enchilada sauce in a Dutch oven or wide-bottomed pot until boiling. Add the meatballs, making sure not to break them. Gently stir or shake the pot so the meatballs settle into the sauce. Reduce the heat to medium-low, and simmer uncovered, gently stirring the meatballs occasionally so they cook evenly, until the meatballs are cooked through, about 20 minutes.
Meanwhile, heat the oven to 425°F and arrange a rack in the middle. Open the rolls and place cut-side up on a baking sheet. Divide the cheese over the rolls.
When the meatballs are ready, bake the rolls until toasted and the cheese is melted, about 5 minutes. Fill each roll with 4 to 5 meatballs and spoon some of the sauce over the meatballs, if desired. Top with cilantro, close the rolls, and serve.