Mix flour, salt, pepper, and garlic powder in a small bowl. Sprinkle evenly over the roast.
Heat olive oil in a Dutch oven over medium-high heat. Brown the roast on all sides, then remove and set aside.
Lower the heat to medium. Add onions, carrots, and celery, cooking until softened (about 5 minutes). Add garlic and cook for 2 more minutes.
Deglaze the pot with red wine, scraping up browned bits. Cook until the wine reduces slightly (about 5 minutes).
Stir in pasta sauce and diced tomatoes (if using). Return the roast to the pot and cover.
Simmer on low heat for 2 to 3 hours, until the roast is fork-tender.
Remove the roast, let it rest for 10 minutes, then slice into chunks.
If the sauce needs thickening, boil it uncovered for a few minutes.
Serve with mashed potatoes or polenta, garnished with parsley if desired.