Make the dough: Place the yeast and sugar in the bowl of a stand mixer fitted with a dough hook or paddle attachment. Or, if you do not own a stand mixer, a regular large mixing bowl. Heat the milk on the stove or in the microwave until warm to touch, about 110°F (43°C). Pour warm milk on top of yeast/sugar. Whisk gently to combine, then loosely cover with a clean kitchen towel and allow to sit for 5-10 minutes. The mixture will be frothy after 5-10 minutes.
If you do not have a mixer, you can mix by hand in this step. Add the butter, egg, flour, and salt. Beat on low speed for 3 minutes. Dough will be soft. Transfer it to a lightly floured work surface. Using lightly floured hands, knead it for 1 minute. If the dough is too sticky to handle, add 1-3 more tablespoons of flour, but you want a very soft dough. Shape into a ball.
Place the dough in a greased bowl (I use nonstick spray to grease) and cover with plastic wrap or aluminum foil. Place in a slightly warm environment to rise until doubled in size, around 60-90 minutes.
As the dough rises, prepare the filling and topping in the next steps and grease a 9×5 inch loaf pan.
Make the cream cheese filling: In a large bowl using a hand mixer or a stand mixer fitted with a paddle attachment, beat all of the filling ingredients together until combined. Cover tightly and set aside until ready to use. (Don’t refrigerate unless making well in advance. It’s easiest to spread on the dough when at room temperature. If refrigerated, let it come to room temperature before spreading on dough in step 7.)
Make the topping: Combine the poppy seeds, sesame seeds, dried minced onion, dried garlic flakes, and coarse salt together in a small bowl. Set aside.
Assemble the bread: Punch down the dough to release the air. Place dough on a lightly floured work surface and with a floured rolling pin, roll out until the dough is about 1/4 inch thick. The dough can be any shape, just as long as it’s around 1/4 inch thick. Spread cream cheese filling on top. Using a 3½-4 inch circle cookie cutter, cut into circles. I get about 12 circles. Fold circles in half and line in prepared baking pan, round side up.
Cover with plastic wrap or aluminum foil and allow to rise once again in a slightly warm environment until puffy, about 45 minutes.
Adjust the oven rack to the lower third position then preheat oven to 350°F (177°C).
Brush dough with the 2 tablespoons of melted butter and sprinkle everything bagel seasoning on top.
Bake until golden brown, about 40-45 minutes. If you find the top of the loaf is browning too quickly, tent with aluminum foil. Remove from the oven and place on a wire rack. Cool for 10 minutes in the pan, then remove from the pan and serve warm.
Cover and store leftovers in the refrigerator for up to 1 week.