In a small bowl, combine chili powder, cayenne, granulated garlic, and flour. Set aside. In a heavy bottomed, large stock pot, heat canola oil over medium-high heat. Add beef cubes and brown on all sides. Add onions and jalapenos and saute for 4 to 5 minutes. Add garlic and saute for 1 minute more. Mix in flour mixture, stirring frequently, for 2 to 3 minutes. Deglaze with beef broth. Then add vinegar. Stir well to combine. Bring to a boil. Lower heat to medium-low and simmer for 2 hours, adding additional beef broth, if necessary, to keep meat simmering in liquid. When meat is fork tender, remove to a sheet pan and shred with 2 forks. Add shredded beef back into pot, along with pinto and black beans, lime juice and half the cilantro. Cook until mixture is heated through. Remove from heat and allow to cool.
Preheat oven to 350 degrees F. In a large, deep-sided skillet, heat corn oil to 325 degrees F. While oil is heating, prepare chimichangas. Fill bottom half of a tortilla with 3/4 cup of the beef and bean mixture and 2 tablespoons pepper jack cheese (when filling tortillas, use a slotted spoon to scoop out beef if mixture is a little liquidy). Lift the edge of the tortilla and roll it over the filling to secure it. Fold in both sides and continue rolling until you reach the opposite end. Secure with a 6-inch skewer weaved through the seam side of burrito. Repeat with remaining tortillas. Slowly lower chimichangas into hot oil and cook 2 minutes on each side or until golden brown. You can cook 4 burritos per batch. Remove from oil, drain on paper towels and keep warm in oven until all are cooked.
To serve, place a bed of shredded lettuce on each plate, then a spoonful of salsa. Place chimichangas on top and add a dollop of sour cream, sprinkle with diced tomatoes, avocado and remaining cilantro to garnish. Serve immediately.