Place potatoes in a large bowl and fill with cold water. Using hands, swirl to remove excess starch, then drain, leaving potatoes in colander.
Wipe bowl dry. Place one-third of potatoes in center of dish towel. Gather towel ends together and twist tightly to squeeze out moister. Transfer potatoes to now-empty bowl and repeat the process with remaining potatoes in 2 batches.
Sprinkle cornstarch, salt and pepper over potatoes. Using hand or fork, toss the ingredients together until well blended.
Melt 1 tablespoon butter in a 10-inch non stick skillet over medium heat. Add potato mixture and spread into even layer.
Cover and cook for 6 minutes. Uncover and using spatula, gently press potatoes down to form round cake. Cook, occasionally pressing on potatoes to shape into uniform round cake, until bottom is deep golden brown, 8 to 10 minutes longer.
Shake skillet to loosen roesti and slide onto a large plate. Add 1 tablespoon butter to skillet and swirl to coat the pan. Invert the roesti onto second plate and slide, browned side up back into the skillet.
Cook, occasionally pressing on potatoes, until bottom is deep golden brown, 8 to 10 minutes.
Transfer roesti to cutting board and let cool slightly while making eggs.
Wipe down the skillet with paper towel. Crack eggs into 2 small bowls. Heat oil in now-empty skillet over medium heat until shimmering. Add remaining 1/2 tablespoon chilled butter to skillet and quickly swirl to coat pan.
Working quickly, pour 1 bowl egg in 1 side and second in other side. Cover and cook for 2 minutes.
Remove skillet from heat and let stand, covered for about 2 minutes ( for runny yolks). For soft yolks, let it stand covered for 3 minutes and 4 minutes for medium set yolks. Slide the eggs onto roesti, sprinkle parmesan cheese, and season with salt and pepper. Cut into wedges and serve.