Preheat the oven to 350F. Line an 8x8 baking pan with parchment paper.
In a saucepan, add the butter and white chocolate and heat on medium-low until almost the entire mixture is melted. Remove from heat and stir until the butter and chocolate is completely melted. Allow to cool slightly, then add the sugar, salt, and vanilla. Mix well (the butter may look like it separated from the mixture, that is okay), then add the eggs in one at a time. Beat well between each addition of egg.
Stir in the flour and mix until combined. The mixture will be very thick!
Pour the batter into the baking pan and bake for 30 - 40 minutes, turning every 10 minutes for even browning (you can try adding aluminum foil after the first 15 mins so the brownies don't brown too much).
Allow to cool for 10 minutes in the pan, then remove from pan and allow to cool on a wire rack.
Beat the butter and cream cheese together until smooth using whisk or whisk attachment. Add the sugar slowly, beating well as you add. Beat in the vanilla. Add the cream if needed.
Spread the frosting over the white chocolate brownies and cut into squares.
Notes
-I left my butter for the frosting near a warm heat source so it was close to melting, but not quite there. I placed the cream cheese in the warm, but not hot, oven for 3 minutes to get it super soft. Doing this meant I did not need to add cream,-The brownie is amazing on its own, so if you don't want to make a whole other thing for the brownies, you can skip the step and still have an incredible dessert!