Preheat the broiler to high and place the oven rack in the middle of the oven.
8 inch oven proof, nonstick skillet over medium heat. Add the olive oil, tomatoes, and onions. Season with ¼ teaspoon salt and cook the tomatoes until they are soft and beginning to fall apart, about 4 minutes.
Meanwhile, whisk the eggs together in a large bowl. Add the heavy cream, basil, and remaining ¼ teaspoon salt and whisk together until smooth and light. Pour the egg mixture over the tomatoes and onions, sprinkle with the mozzarella and let it cook for 2 minutes. Using a rubber spatula, begin to loosen the cooked eggs from the sides and the bottom of the pan to allow the raw egg to coat the bottom of the pan. Let sit for another minute and repeat. Place the whole pan under the broiler and cook for 5 to 6 minutes or until the eggs are set. Slide the frittata out of the pan and onto a board.
Sprinkle the chopped basil on top and cut into 4 even pieces to serve.