In a stand mixer bowl, blend together 1 cup flour, yeast, sugar, and salt.
Heat milk and butter to 120-130ºF; butter does not need to melt. Add to flour mixture; blend on low speed using paddle attachment. Beat 2 to 3 minutes on medium speed. Add eggs; beat 1 minute.
Switch to dough hook. Knead in baking powder, baking soda, and enough remaining flour to make a smooth, very soft, sticky dough, about 5 to 7 minutes. (NOTE: For hand mixing: following above steps, mix ingredients in large mixing bowl using a wooden spoon or dough whisk. Knead dough on floured surface until soft and sticky.)
Place dough in lightly oiled bowl and turn to grease top. Cover; let rise until indentation remains after poking dough with finger down to second knuckle, about 45-60 minutes.
Prepare pans: Line 2 sheet pans with parchment paper or silicone mats.
Turn dough onto lightly floured surface; punch down to remove air bubbles. Divide dough into 4 parts. Divide each part into 2 pieces. Divide each piece into 3 sections. Shape each piece into a smooth ball. Place on prepared pans. Cover; let rise until indentation remains after touching, about 30-45 minutes.
Preheat oven to 375°F.
Bake for 12 to 15 minutes or until golden brown. Brush with melted butter if desired. Remove from pan; cool on wire rack.