Preheat the oven to 350 degrees F.
Beat the butter, granulated sugar, and brown sugar together in a large bowl until creamy and light, about 2-3 minutes.
Add the eggs, pumpkin, sour cream, and vanilla, beating until combined. Be sure to scrape the bottom and sides of the bowl so everything gets evenly combined.
Add the flour, baking soda, salt, cinnamon, and pumpkin pie spice. Mix just until combined. Set aside.
Make the filling by combining the brown sugar, flour, cinnamon, pumpkin pie spice, and butter in a medium bowl. Mix well until evenly combined and the mixture has a sandy texture.
Spray a 12-cup bundt pan with baking spray, then spread half of the cake batter into the pan. Spoon the brown sugar filling onto the batter, mounding it in the middle and trying to stay away from the edges as much as possible.
Spoon the remaining batter on top of the filling and spread into an evenly layer.
Bake for 45-50 minutes until a skewer inserted into the center of the bundt cake comes out clean with just a few crumbs. Cool for 10-15 minutes before flipping the pan over onto a wire rack or cake plate. The cake should slide right out.
Once the cake has cooled, make the icing by mixing the powdered sugar, cinnamon, heavy cream, and butter in a medium bowl until creamy and smooth. It should be pourable but thick. If necessary, add a little extra heavy cream to thin out the icing or additional powdered sugar if the icing is too thin.
Pour the icing over the cooled cake. You can serve the cake immediately or let the icing firm up a bit for an hour or two before covering with a cake dome to keep fresh.