Heat oil and butter in a large pan over medium heat. Add garlic. Cook, stirring, for about 30 seconds or so.
To the pan, add onions and carrots with a pinch of salt and saute for 4 to 5 minutes.
Stir in the Italian herbs, oregano, crushed red paper flakes, basil, and fennel seeds.
Stir in the tomato paste and sauté for about 5 minutes. Frequent stirring is important to avoid scorching the tomato paste.
Add ground beef to the pan with ½ tsp salt and continue cooking, stirring often to break up the meat, until meat is cooked through.
Add lentils to the pan and stir well to combine, adding a small pour of additional olive oil if desired to coat the lentils.
Add the tomatoes with their liquid. If using, add the parmesan rind. Bring to a boil while stirring and breaking up the whole tomatoes with a flat spatula. Then reduce heat and simmer for about 15 minutes.
Taste the sauce for seasoning, add more salt if needed.
Boil the spaghetti in a separate pot of salted water according to the package instructions for al dente noodles.
Continue to simmer the meat and lentil sauce until it's reduced to your liking. For me that means saucy but not watery. Keep the finished sauce hot till the spaghetti is ready. Remove and discard the parmesan rind.
Combine half the sauce (about 2 ½ cups) with cooked and drained spaghetti (from one pound dried). Garnish with shredded parmesan for serving if desired.
Store the remaining half of the sauce in the freezer for another meal. See note about sauce yield.