Bring a large pot of water to a boil. Generously add salt and 3 tablespoons of oil and add the spaghetti. Bring back to a boil and cook for 11 to 13 minutes until the spaghetti is just tender. Drain into a colander and rinse under cold water. Return the spaghetti to the pot and set aside.
Heat 2 tablespoons of the olive oil in a medium skillet over medium heat for 1 minute. Add the garlic and onion and cook for 3 minutes, stirring occasionally. Add the tomatoes, kalamatas, 1 teaspoon of salt and a few grinds of pepper and cook for an additional 5 minutes until the tomatoes begin to break down. Remove the mixture from the heat and set aside.
Whisk the eggs and cream together in a large mixing bowl. Add the remaining teaspoon of salt, a few grinds of pepper, the red pepper flakes, basil, fontina, feta, 4 ounces of the Parmesan and the tomato mixture. Mix in the spaghetti.
Heat the remaining olive oil in a 10-inch skillet over high heat. Add the spaghetti mixture, reduce the heat to medium and cook for 5 minutes. Transfer the skillet to the preheated oven for 30 minutes until the center of the pie is set and the top is golden.
Remove from the oven and let cool for 10 minutes. Run a spatula around the edges and underneath the pie to loosen. Place a large plate over the skillet and invert the pie onto the plate. Place another plate onto the pie and invert again. Let the pie set for an additional 10 minutes.