Brown beef and onion in a deep skillet over medium-high heat for 7 to 8 minutes, breaking the meat into crumbles, until the beef reaches 160°F. Drain excess fat if present.
Stir in garlic, chili powder, cumin and salt for 30 seconds. Add tomatoes, beans and broth and bring to a simmer.
Stir in macaroni, cover and simmer gently for 10 to 12 minutes, stirring every few minutes, until the noodles are tender. Add reserved water 2 tablespoons at a time if the pan becomes dry before the pasta cooks.
Uncover and simmer for 2 minutes if the sauce is still loose, then remove from the heat.
Fold in cheddar until melted and let stand for 3 minutes before serving.