Preheat the oven to 350ºF. Coat a 9x5 loaf pan with cooking spray.
In a large bowl, combine the breadcrumbs and milk and let them soak.
Place the olive oil in a large skillet over medium-high heat. When hot, add the onion and cook, stirring occasionally, until soft but not brown, 5 to 7 minutes. Add the celery and cook 3 to 4 minutes more. Add the mixture to the breadcrumbs along with the beef, cheese, carrot, ketchup, salt and pepper. Use a rubber scraper to combine, or work it together with your hands.
Press the meatloaf mixture into the prepared pan and smooth out the top. Pour the tomato sauce evenly over the top. Bake until the center of the loaf is no longer pink or reads 160ºF on a meat thermometer, 45 to 50 minutes. Cut into slices and serve with mashed potatoes.