Preheat oven to 350 degrees. With an electric mixer or stand mixer, combine 3 cups all-purpose flour, 1 cup granulated sugar, 1/4 teaspoon salt, 4 teaspoons baking powder, 1 1/2 cup milk, 2 eggs, and 2 teaspoons vanilla. Once that is combined, you slowly stir in the melted 4 tablespoons butter. Pour the batter into a greased 9x13 inch pan.
In a medium sized bowl, mix 1 cup unsalted butter, 1 cup brown sugar, 1 tablespoon cinnamon and 2/3 cups nuts if you are using them. Drop evenly over the cake batter in your 9x13 inch pan. Use a knife to marble and swirl over the cake.
Bake for 25-30 minutes or until a toothpick comes out nearly clean from the center.
Make the glaze by adding 2 cups powdered sugar, 4-5 tablespoons milk, and 1 teaspoon vanilla to a medium-sized bowl. Whisk until smooth and drizzle over warm cake. Serve warm or at room temperature.