Heat oil in a large nonstick skillet over medium-high heat. Add onion, and sauté 5 minutes. Remove from heat; cool.
Dissolve yeast in warm milk in a small bowl; let stand 5 minutes.
Combine onion, potato, salt, and cheese in a large bowl. Add milk mixture and dill; stir until well combined.
Lightly spoon flour into dry measuring cups; level with a knife. Add 6 cups flour to onion mixture; stir until a soft dough forms. Turn dough out onto a floured surface. Knead until smooth and elastic (about 8 minutes); add enough of remaining flour, 1 tablespoon at a time, to keep dough from sticking to hands.
Place dough in a large bowl coated with cooking spray, turning to coat top. Cover and let rise in a warm place (85°) 40 minutes or until doubled in size. (Gently press two fingers into dough. If indentation remains, dough has risen enough.) Punch dough down; cover and let rest 5 minutes.
Divide dough into 2 portions. Roll each portion into a 14 x 7-inch rectangle on a lightly floured surface. Roll up rectangles tightly, starting with a short edge, pressing firmly to eliminate air pockets; pinch seams and ends to seal. Place rolls, seam sides down, in 2 (9 x 5-inch) loaf pans coated with cooking spray. Coat dough with cooking spray. Cover and let rise in a warm place (85°) 20 minutes or until doubled in size.
Preheat oven to 350°.
Combine water and egg, stirring with a whisk. Gently brush loaves with egg mixture. Bake at 350° for 40 minutes or until brown on the bottom and sound hollow when tapped.