Line a baking sheet or a few large plates with paper towels and set aside. Place a cast iron skillet over medium-low heat. If you do not have a cast iron skillet, heat a nonstick skillet only over medium heat, and wait until the batter is ready to fry before heating the skillet.
In a large bowl, place the cornmeal, all purpose flour, xanthan gum, baking powder, baking soda, salt, chili powder and cumin, and whisk to combine well. Add the chopped scallions, and mix to combine. Create a well in the center of the dry ingredients and add the buttermilk, butter and egg yolks, mixing after each addition until just combined. Place the egg white in a separate, medium-size bowl and beat with a handheld mixer until stiff, but not dry, peaks form. Fold the whipped egg whites gently into the cornmeal batter in two or three parts. Add the corn kernels and mix carefully just until evenly distributed throughout the batter.
Place about 2 tablespoons of the ghee or virgin coconut oil in the hot cast iron skillet and turn the skillet to coat the entire surface with the fat as it melts. Place the batter in mounds of about 1/4 cup each in the hot skillet, spaced about 1 inch apart from one another, taking care not to crowd the skillet. Allow to cook until bubbles begin to break through the surface and the corn cake is golden brown on the underside (about 3 minutes). Carefully flip over the corn cakes with a flat spatula and continue to cook until the other side is golden brown (another 1 to 2 minutes). Remove from the pan to the paper towel-lined baking sheet or plate, and repeat with the remaining batter, adding at least 1 more tablespoon of ghee or coconut oil with each batch.
Serve immediately with sour cream and chopped cilantro, or place on a lined baking sheet and keep warm in a 200°F oven until all of the cakes are ready to serve.
Notes
When corn is not in season, use an equal amount of frozen corn but do not defrost before folding it into the batter and cooking.