Mix the dough: In a large bowl, whisk flour, yeast, sugar, and salt. Add warm milk, melted butter, egg, and vanilla.
Stir until a shaggy dough forms, then knead by hand 5–7 minutes (or in a mixer 4–5 minutes) until smooth and slightly tacky.
First rise: Place dough in a lightly greased bowl, cover, and let rise in a warm spot until doubled, about 60–90 minutes.
Prepare the filling: In a small bowl, mix soft butter, brown sugar, cinnamon, and salt into a spreadable paste. Lightly crush the mini eggs—aim for a mix of halves and small chunks.
Roll it out: Punch down the dough and roll into a 12x16-inch rectangle on a floured surface. Spread the cinnamon butter evenly, leaving a 1/2-inch border on the long edge farthest from you.
Add the mini eggs: Sprinkle the crushed mini eggs evenly over the filling, pressing them in gently so they stick.
Shape the rolls: Starting from the long edge nearest you, roll the dough into a tight log.
Pinch the seam to seal. Trim the ends if messy, then slice into 12 even rolls using dental floss or a sharp knife.
Second rise: Arrange rolls in a greased 9x13-inch pan, cover lightly, and let rise until puffy, 30–45 minutes. Preheat oven to 350°F (175°C).
Bake: Bake 22–26 minutes, or until the centers read about 190°F (88°C) and the tops are lightly golden.
If browning too fast, tent with foil for the last 5 minutes.
Make the icing: Beat cream cheese and butter until smooth. Add powdered sugar, milk, vanilla, and salt. Mix until creamy and spreadable.
Finish and serve: Spread icing over warm rolls.
Top with extra chopped mini eggs if you like. Serve warm and gooey.