Set a pot of boiling water over high heat, and prepare pasta according to package instructions. Remember to reserve about 1c of pasta water before draining. Set aside pasta and reserved water.
While water is heating up, set a large frying pan over medium heat. Cook bacon, and set aside. Leave the bacon fat in the pan.
Lower the heat to medium, let the pan cool just slightly so you don't burn your garlic. Add garlic and red pepper flakes to the bacon fat, and fry until the garlic is golden brown. It takes about 30 seconds, so keep stirring and watching so it doesn't burn. When garlic is fragrant and golden, add onion. Sauté for about 5 minutes.
Add tomatoes to the pan, and sauté for 2-3 minutes until they begin to soften. Add spinach, and continue to sauté until it's wilted and incorporated with the rest of your mixture.
Season with salt and pepper, add parmesan cheese, 1-1½c of the butternut squash soup, and ¼-½c of reserved pasta water. Stir to combine all ingredients and bring to a simmer. Allow to simmer for a few minutes, so the cheese has time to melt into the sauce. Add noodles, and stir.
Add more butternut squash soup if your mixture is looking dry. If your sauce is too thick, add a bit more of the reserved pasta water. Continue to adjust consistency and volume of sauce to fit your preferences, by adding more of the soup and splashes of pasta water. Your end result should be a creamy sauce, reminiscent of an alfredo or carbonara sauce. See notes for additional information about achieving your desired results.
Crumble bacon over the finished pasta, and stir. Adjust salt and pepper as needed, and serve topped with grated parmesan cheese.