Cut the banana leaves into squares, 10in x10in. Set aside.
In a large stock pot, bring abundant water to a boil. Once boiling, add the shredded cabbage and blanche for 3 minutes. Remove from the water, and lay out to dry, removing as much liquid as possible. Repeat this same step with the spinach, squeezing out as much liquid possible once blanched. You will end up with a tight and small amount.
Sift together the all-purpose flour with the baking powder. Set aside.
Using an electric mixer, beat the butter until creamy. Add the egg yolks, one by one and keep beating for another 10 minutes, scraping the sides of the bowl every so often.
Add the cheese, salt, pepper and the minced onions. Continue to beat until incorporated. Add the flour and baking powder and continue beating until all is incorporated. The dough will have a sticky consistency, and it will be relatively dense.
Add the blanched cabbage and spinach, and mix with a spatula until the ingredients are incorporated.
In a separate bowl, beat the egg whites plus a capful (1 teaspoon) of plain, white vinegar, until you have a meringue. The egg whites will form stiff, short peaks. Gently fold the meringue into the other mixture until all incorporated, without deflating the egg whites.
Lay a banana leaf flat on the counter and scoop a ladle of mixture in the center. Add some sliced cheese in the center. Fold the sides of the banana leaf in, followed by folding in the bottom and top ends, enclosing the mixture in the banana leaf, like a small packet.
Place the tamales, sides down in a "tamalera" (a pot made for steaming tamales that has a perforated insert and a pot for the water), or another steaming pot. You can create your own steaming pot by fitting a steel colander in a bigger pot, making sure it doesn't touch the bottom. Fill the bigger pot with water and turn on the heat to medium. Steam cook for 30 minutes. Serve warm.