Heat a drizzle of oil in your pot over medium heat. Add the diced onion and cook, stirring occasionally, until soft and translucent, about 4-5 minutes. Add the minced garlic and cook another 30 seconds until fragrant.
Add the ground beef, breaking it up with your spoon. Cook until browned, about 5-6 minutes. Spoon out excess grease, leaving about a tablespoon in the pot.
Stir in the tomato paste and cook for 1 minute until it deepens in color. Sprinkle the flour over the beef and stir it in completely. Cook for another minute, stirring constantly.
Slowly pour in the beef broth while stirring and scraping the bottom of the pot to release the browned bits. Then pour in the milk. Add the onion powder, garlic powder, and paprika. Stir until smooth.
Bring the liquid to a gentle simmer. Stir in the dry pasta. Cover the pot, reduce heat to medium-low, and cook for 12-15 minutes, stirring once or twice to prevent sticking.
Check the pasta: shells should be tender and most liquid absorbed into a creamy sauce. If still thin, simmer uncovered 2-3 more minutes.
Remove the pot from heat completely. Sprinkle the shredded cheddar over the top and stir constantly until melted. Season with salt and black pepper to taste. Serve immediately.