In a large bowl, combine warm water, sugar, and yeast. Stir and let sit for 5-10 minutes, until foamy.
Add eggs and evaporated milk to the yeast mixture; whisk until smooth.
Mix in bread flour and salt. Add butter and blend until incorporated.
Gradually add all-purpose flour, mixing until a soft, slightly sticky dough forms.
Transfer dough to a floured surface. Knead until smooth and elastic, about 5 minutes.
Place dough in a lightly greased bowl, cover, and let rise in a warm place until doubled, about 1-2 hours.
Punch down dough. Roll out to 1/4-inch thickness and cut into 2-inch squares.
Heat oil (2-3 inches deep) in a heavy pot to 350°F. Fry beignets in batches, turning once, until golden brown (1-2 minutes per side).
Remove with a slotted spoon and drain on paper towels.
Dust generously with powdered sugar and serve warm.