Preheat oven to 350F (175C) and line a baking sheet with parchment paper. Set aside.
Combine butter and sugar in a large mixing bowl and use an electric mixer to beat together until light and fluffy.
Add egg and vanilla and stir until well-combined.
In a separate mixing bowl, whisk together flour, cornstarch, baking powder, baking soda, and salt.
Gradually add dry ingredients to wet and stir until completely combined and dough is uniform.
Cover dough and place in the refrigerator while you prepare the streusel topping.
Melt butter then set aside until cooled until no longer hot.
In a medium-sized mixing bowl, combine flour, sugars, cinnamon and salt and stir to combine.
Drizzle in butter and use a fork to toss/claw the mixture until you have a clumpy streusel.
Scoop cookies into 2 Tablespoon-sized balls and roll until smooth. Place on cookie sheet, spacing cookies 2” apart, and make a small indent or nest in the center of the dough with your thumb or the back of a round Tablespoon.
Take a handful (at least 2 Tablespoons) of streusel and gently press into the nest you created. You’ll have a heaping mound of streusel, use a lot! You may have some streusel left over.
Bake in center rack of 350F (175C) oven for 12 minutes or until edges are just beginning to turn light golden brown. Allow to cool for at least ten minutes before decorating with glaze (if using).
To make the glaze: Whisk together powdered sugar with 1 Tablespoon of milk. Add additional milk as needed until you have a smooth glaze that ribbons off of your whisk. Drizzle over cookies.