In a large mixing bowl, add the flour, sugar, yeast, and salt. Be sure not to place the salt directly on top of the yeast. Mix together until well combined.
In a small bowl, beat together the eggs and milk together until well-incorporated.
Slowly mix the egg mixture into the flour mixture and mix until it comes together into a ball.
Beat the dough well (preferably using a stand mixer with a dough hook on medium speed) and slowly add the butter one tablespoon at a time. Beat until each tablespoon of butter is fully incorporated into the dough before adding another tablespoon.
Knead the dough for about 10 minutes, or until you can stretch a portion of the dough so much that you can almost see through it without it tearing.
Place the dough in a lightly greased bowl and cover. Allow to rise in a warm, dry place for at least an hour, or until doubled in size.
While the dough is rising, mix together all the ingredients for the filling together in a small bowl and set aside.
Once the dough is finished rising, gently deflate and place on a lightly floured surface. Evenly divide the dough into 8 pieces.
Roll each piece into a ball, then create a deep indentation in the middle of the ball that goes almost completely though. Stretch the indentation until it is about four inches wide and there is a thick border all around. It should resemble a kiddie pool.
Place each round on a baking sheet lined in parchment paper or a silicone mat.
Fill each round with the pumpkin mixture. You should be able to fill each round with approximately 1/4 cup of the filling.
Mix together the granulated sugar and cinnamon for the topping. Sprinkle over the dough and filling.
Preheat the oven to 350°F and bake for 18 – 20 minutes, or until a light golden brown.
Allow to cool to room temperature before serving.
Best the same day, but can store in an air tight container for three days. I recommend warming in the microwave or oven before serving stored brioche.