TO MAKE THE FILLING: Cut the cabbages into quarters. Steam until very tender, approximately 20 to 30 minutes. Drain and cool. In a strong but thin linen towel, squeeze as much of the liquid from the steamed cabbage as possible. Squeeze only a small handful at a time. Discard the juice.
Grind the squeezed cabbage with the fine blade of a meat grinder. Add the cream cheese and softened butter and season highly with salt and pepper. Set aside.
TO MAKE THE DOUGH: Whisk the egg, milk, water, and sour cream together. Add the flour, 1 cup at a time, mixing well after each addition. Turn out onto a floured board and knead until smooth and elastic. This may take 10 minutes. Add as little additional flour as possible.
Put ball of dough under an inverted bowl until ready to use.
To make the varenyky, cut the dough into 4 pieces. On a floured board roll out piece of dough into a round 1/16 inch thick. Keep rest of dough covered. With a cookie cutter or glass tumbler (2 1/2 to 3 inches in diameter), cut the dough into rounds. For each varenyk take 1 round of dough, stretch it a bit with your fingers, and spoon about 2 Tablespoons of the cabbage onto the center.
Fold the circle in half and press the edges together. Crimp the edges with your fingertips into a decorative pattern if you wish. Be sure to seal the edges well or the filling may fall out during cooking. Put finished dumplings on a towel or tray that has been lightly sprinkled with cornmeal. Continue rolling dough until all the filling has been used up.
Bring a very large kettle of water to the boil. Add 1 Tablespoon salt to the water and cook about 20 varenyky at one time in simmering water until they are tender and float (about 5 to 6 minutes.) Remove to a serving dish with a slotted spoon and dribble with butter and a bit of oil, to prevent sticking. Gently fold the varenyky in the oil. Leftover varenyky can be fried in butter and oil with fried onions.