Melt the butter over medium heat in a large skillet.
Add the onion and sauté until soft, about 3 to 4 minutes. Add the ground beef and cook until no longer pink, about 5 minutes. Tilt the skillet to the side and spoon out most of the rendered grease. Discard safely.
Season the beef with salt, pepper, paprika, chili powder, mustard, and garlic powder. Cook, stirring often, for about 1 minute. Stir in the Worcestershire sauce, tomato sauce, beef broth, and half and half. Stir to combine. Bring to a slight simmer and stir in the pasta. Simmer, stirring often, until the pasta is just cooked, about 10 to 12 minutes.
Stir in 1 cup of the cheese and continue stirring until melted. Sprinkle the remaining half cup on the top, cover the skillet with the lid, and let rest for about 5 minutes. Serve at once, garnished with fresh chopped parsley, if desired.
