Make the swirl: Combine the cream cheese, granulated sugar, eggs, sour cream, heavy cream and vanilla in a food processor and puree until smooth; set aside.
Make the cake: Position a rack in the lower third of the oven; preheat to 350 degrees F. Generously coat a 10- to 15-cup Bundt pan with cooking spray and dust with flour, tapping out the excess. Whisk the flour, granulated sugar, cocoa powder, baking soda and salt in a large bowl. Whisk the vegetable oil, sour cream, eggs, food coloring, vanilla, vinegar and 1/4 cup water in a medium bowl. Pour the wet ingredients into the dry ingredients and whisk until just combined.
Spread 3 cups of the batter in the prepared Bundt pan. Pour in the cream cheese swirl mixture, then spoon the remaining cake batter evenly over the top. Bake until the top is cracked and a toothpick inserted into the cake comes out clean, about 1 hour 10 minutes. Transfer to a rack and let cool 20 minutes in the pan, then carefully invert onto a plate and let cool completely, at least 2 hours.
Make the glaze: Combine the cream cheese, confectioners' sugar, sour cream, vanilla and salt in a food processor and puree until smooth. Pour and spread on the cooled cake.
Recipe courtesy of Food Network Magazine