In a large mixing bowl, combine all the meatball mixture ingredients and mix well. Refrigerate (this will help to ensure the balls don't break while cooking).
Preheat your oven to 350°F. Halve the spaghetti squash lengthwise and sprinkle with salt and pepper. Spray with cooking spray. Place on a lined baking sheet, cut side down. Bake for 45 minutes.
Meanwhile, get started with the meatballs. Combine all the sauce ingredients in a pot, and bring to a simmer. Let the sauce cook for about 20 minutes, until it thickens a bit.
Working in batches, form meatball mixture into balls and drop into the simmering sauce. Do not overcrowd the pot, or balls might break.
Cook the meatballs for about 30 minutes. Once cooked, use a slotted spoon to remove from the pot and continue with the next round of meatballs. I usually cook the meatballs in 3 batches.
Once spaghetti squash is cooked, remove from the oven and use a fork to shred into “spaghetti” (this part is actually fun).
Serve meatballs over warm spaghetti squash, with lots of sauce. Indulge. Try to forget it's not really spaghetti. And admit it, it is pretty close.