Preheat the oven to 375 degrees F.
Slice off the top portion of the garlic heads to reveal the cloves. Lightly rub back and forth to remove the paper on the sides and peel any excess paper off. Drizzle about a 1/2 teaspoon of olive oil on top of the garlic cloves. Wrap the garlic heads in foil and place them on a baking sheet. Roast for 45 minutes.
Prepare a 9 x 13 inch baking dish (or a large baking sheet) by spraying it with nonstick spray.
In a large bowl, combine the ground chicken, egg, olive oil, minced garlic, parmesan cheese, bread crumbs, fresh herbs, dried basil, dried parsley, salt, and pepper. Gently combine until everything is mixed well.
Roll the mixture into meatballs about 1-inch in diameter, wetting your hands slightly to avoid sticking.
Add half of the jar of tomato sauce to the bottom of the baking dish. Place the meatballs in the sauce, about 1-inch apart.
Cover each meatball with a bit more sauce and top with mozzarella or provolone cheese.
Bake for 25 to 30 minutes, or until the center of the meatballs reaches 165 degrees F.
While the meatballs are baking, prepare the spaghetti. Cook in salted water until al dente, then place in a bowl, drizzling with 2 to 3 tablespoons of olive oil.
Once the garlic is roasted, squeeze the cloves into the spaghetti and stir in ΒΌ cup of parmesan cheese.
Serve with the meatballs and additional sauce, cheese, and fresh basil on top.
If you wish to freeze, allow the meatballs to cool completely before placing them in a freezer-safe container.
For freezing, roll the meatballs and place them on a parchment paper-lined baking sheet. Flash freeze for 30 to 60 minutes, then transfer to a resealable bag.
To cook from frozen, place them in a pot or slow cooker and cover with sauce, cooking on low for 6 to 8 hours.