Heat a large skillet over medium-high heat. Add the ground beef and brown, breaking it up with a spoon until no pink remains.
Drain excess fat and optionally run hot water over the meat in a colander; return the skillet to the stovetop and wipe out any residue.
Add olive oil to the skillet, then sauté the diced onion, minced garlic, and diced carrot until tender, about 5–7 minutes.
Return the cooked beef to the pan. Stir in the 15 oz can(s) of tomato sauce and/or diced tomatoes, the can of tomato paste, cold water, basil, oregano, brown or granulated sugar, and bay leaves. Season with salt and pepper to taste.
Reduce heat to medium-low, cover, and simmer the sauce, stirring occasionally, for 1–4 hours until flavors meld. Add more water if the sauce becomes too thick.
When ready to serve, bring a large pot of salted water to a boil. Cook the gluten-free spaghetti according to package directions until al dente. Drain well.
Toss the drained pasta with the meat sauce and serve with grated Parmesan if desired.