Brown beef and onion in a 6-quart Dutch oven over medium-high heat for 8 minutes, breaking the meat into small crumbles and cooking it to 160°F. Spoon off excess fat.
Stir in garlic, chili powder, cumin and tomato paste and cook for 1 minute.
Add beans, tomatoes with juices, broth and salt. Bring to a boil, stir in macaroni and reduce to a steady uncovered simmer.
Cook for 11 to 14 minutes, stirring every 2 minutes and adding reserved water a little at a time if the sauce becomes too tight before the macaroni is tender.
Remove from the heat and rest for 3 minutes. Divide among 6 bowls and scatter cheddar evenly over the hot portions so it softens.