Heat a large skillet over medium-high heat. Crumble ground beef into the hot skillet; season with salt and pepper. Cook and stir beef until completely browned, 7 to 10 minutes. Drain and discard any excess grease. Transfer beef to a bowl.
Melt butter in the skillet over medium heat. Cook and stir onion and garlic in hot butter until softened, 3 to 5 minutes. Stir flour into onion mixture; cook and stir until flour is browned, about 1 minute. Return beef to the skillet; stir. Pour beef broth over the mixture in the skillet; bring to a boil. Stir Worcestershire sauce and mustard through the mixture.
Place a cover on the skillet, reduce heat to medium-low, and cook mixture at a simmer until the consistency is gravy-like, about 1 hour.
Stir sour cream and cream cheese through the beef mixture to serve.