Step 1: Preheat oven to 325°F (163°C). Grease and flour a 10-inch Bundt pan or a 9x5-inch loaf pan.
Step 2: In a large mixing bowl, beat softened butter and cream cheese with an electric mixer until light and fluffy. Slowly add granulated sugar, beating until smooth and creamy.
Step 3: Add eggs one at a time, beating well after each addition until fully incorporated.
Step 4: In a separate medium bowl, whisk together flour, baking powder, salt, and ground cinnamon.
Step 5: Gradually add the dry mixture to the wet butter mixture, alternating with the buttermilk. Start and end with dry ingredients, mixing just until combined (do not overmix).
Step 6: Gently stir in vanilla extract. If using, fold in chopped pecans.
Step 7: For the cinnamon swirl: In a small bowl, combine brown sugar, cinnamon, and melted butter to form a thick paste.
Step 8: Pour about half of the cake batter into the prepared pan. Dollop half of the cinnamon swirl mixture over the batter. Gently swirl with a knife or skewer.
Step 9: Carefully spoon the remaining cake batter over the cinnamon swirl layer, then repeat the swirling process with any remaining cinnamon mixture.
Step 10: Bake for 1 hour and 15 minutes to 1 hour and 30 minutes, or until a toothpick inserted into the center comes out clean. If browning too quickly, loosely tent with foil.
Step 11: Let the cake cool in the pan for 10-15 minutes, then carefully invert it onto a wire rack to cool completely.
Step 12: While the cake cools, make the Caramel Pecan Glaze: In a medium saucepan, melt 0.5 cup butter over medium heat. Add 1 cup brown sugar and stir until it bubbles and dissolves.
Step 13: Stir in heavy cream and continue to stir constantly for about 2 minutes until the glaze is smooth and thickened. Remove from heat and stir in 0.5 tsp vanilla extract. Fold in toasted chopped pecans.
Step 14: Once the cake is completely cool, generously pour the warm caramel pecan glaze evenly over the top. Let the glaze set for a few minutes before slicing and serving.