Combine the warm milk and sugar in a large bowl. Sprinkle the yeast over the top and let it sit for 5–10 minutes until foamy.
Add the melted butter, eggs, vanilla, salt, and flour. Mix until a soft dough forms, then knead for 8–10 minutes until smooth and elastic.
Transfer the dough to a greased bowl, cover, and let it rise for about 1½ hours or until doubled in size.
Mix the ground walnuts, brown sugar, melted butter, warm milk, vanilla, cinnamon, and salt until a smooth, spreadable filling forms.
Roll the dough into a large rectangle about ¼ inch thick. Spread the walnut filling evenly over the dough, leaving a small border around the edges.
Roll the dough tightly into a log, pinch the seam closed, and place it seam-side down on a parchment-lined baking sheet. Cover and let it rise again for 30–45 minutes.
Brush the loaf with the egg wash and bake at 350°F (175°C) for 35–40 minutes, or until golden brown.
Cool the nut roll on a wire rack before slicing. Dust with powdered sugar or drizzle with honey glaze before serving, if desired.