In a small bowl, stir together the garlic, chili powder, cumin, coriander, sugar and salt.
Heat the oil in a Dutch oven over medium-high heat until shimmering. Sprinkle the meat with salt and cook until browned on both sides, about 6 to 8 minutes. Remove the meat to a plate.
Reduce the heat to medium, add the onions to the pot and cook until golden brown, about 5 minutes. Stir in the garlic mixture and cook until fragrant, about 1 minute. Add the tomato sauce and water and bring to a boil. Return the meat and any accumulated juices to the pot, cover, reduce the heat to low, and simmer until the meat is tender and can be broken apart easily, about 1½ hours.
Preheat oven to 350 degrees F.
Strain the beef mixture over a medium bowl. Transfer the meat and any other solids to a separate medium bowl and break the beef into small pieces. Mix together with half of the shredded cheeses, the cilantro and the jalapeños.
Spread ¾ cup of the sauce in the bottom of a 9×13-inch baking dish. Microwave the tortillas according to package directions to soften. Spread about ⅓ cup of the beef mixture down the center of each tortilla, roll up tightly, and place in the baking dish seam-side down. Pour the remaining sauce evenly over the enchiladas and spread to ensure that all of the ends are covered in sauce.
Sprinkle the remaining cheese over top of the enchiladas, cover the baking dish with foil and bake for 25 minutes. Remove the foil and continue to bake until the cheese browns slightly, 5 to 10 minutes. Leftovers can be stored in an airtight container in the refrigerator for up to 3 days.