Preheat your oven to 375°F (190°C). Lightly grease a 9×13 inch baking dish.
Prepare the Beef Mixture: Heat olive oil in a large skillet or Dutch oven over medium-high heat. Add the ground beef and cook, breaking it apart with a spoon, until browned and no pink remains. Drain off any excess grease.
Add the chopped onion to the skillet with the cooked beef. Sauté for 5-7 minutes, until the onion softens and becomes translucent.
Stir in the minced garlic and cook for another minute until fragrant.
Add the crushed tomatoes, beef broth, tomato paste, Italian seasoning, 1/2 teaspoon salt, and 1/4 teaspoon black pepper to the skillet. Bring the mixture to a simmer, then reduce heat to low, cover, and let it cook for 10-15 minutes, allowing the flavors to meld. Taste and adjust seasoning if needed.
Prepare the Mashed Potatoes: While the beef mixture simmers, place the peeled and quartered potatoes in a large pot. Cover with cold water and add a pinch of salt. Bring to a boil over high heat, then reduce heat and simmer for 15-20 minutes, or until the potatoes are fork-tender.
Drain the potatoes thoroughly. Return them to the hot, empty pot.
Add the milk, butter, 1/2 teaspoon salt, and 1/4 teaspoon black pepper to the potatoes. Mash with a potato masher or an electric mixer until smooth and creamy. Do not overmix, as this can make the potatoes gluey.
Stir 1/2 cup of the shredded cheddar cheese into the mashed potatoes until just combined.