Preheat the oven to 350ยบ F. Line a cupcake tin with liners.
In a medium bowl, whisk together the sifted flour, baking powder, spices and salt. Set aside.
In the bowl of a stand mixer fitted with the paddle attachment (or a large bowl with a handheld mixer) add butter and coconut oil and beat until creamy. Add white and brown sugar and beat on high speed until fluffy and lighter in color, 2 to 3 minutes. Add the eggs one at a time, mixing well until combined. Add vanilla and beat on medium speed for another minute, scraping down bowl, as needed. Turn the mixer to low speed and add half of the dry ingredients. Mix until just combined. Pour in the milk, and mix again, just until combined. Add in the other half of the dry ingredients and mix until the batter is smooth and there are no streaks of flour.
Fill cupcake liners about 3/4 of the way to the top. Bake until cakes are set, 15 to 17 minutes. Remove from oven and let cool on a rack completely before frosting.
Add butter to a medium-sized, light-colored saucepan set over medium-high heat. Cook, swirling the pan gently, until milk solids turn golden brown (not black) and smell nutty, about 7 minutes. Pour into a heat-proof bowl, making sure to scrape out the brown bits, and refrigerate until solid.
Add the solid brown butter to the bowl of stand mixer fitted with a whisk attachment (or use a large bowl and hand mixer), and beat on high speed until creamy and whipped. Add the cream cheese and beat on medium-high speed until mixture is smooth and creamy. Add 4 cups confectioners' sugar, spices, salt, and vanilla. Beat on low speed for 30 seconds, then switch to high speed and beat for 2 minutes. If you want the frosting a little thicker, add the extra 1/4 cup of confectioners sugar.
Frost the cupcakes and sprinkle with pink peppercorns and a drizzle of salted caramel sauce, if desired.