For the cupcakes: Preheat the oven to 350 degrees F.
Combine the flour, baking powder and salt in a large bowl. Reserve.
In the bowl of a stand mixer fitted with the paddle attachment, combine the butter and sugar. Beat the butter and sugar together on medium-high speed until they are light and fluffy. Turn the mixer off and scrape down the sides of the bowl.
Beat in the eggs, 1 at a time. Slowly add the vanilla, sour cream and milk. Scrape down the sides of the bowl, as needed. With the mixer on medium speed, gradually mix in the flour.
Line a muffin tin with paper muffin cups. Divide the batter evenly among the lined cups, filling each about two-thirds of the way.
Bake until a toothpick comes out clean when inserted into the middle of a cake, about 20 minutes. Check about halfway through the baking process to make sure everything is going along great and also rotate the tin.
Remove from the oven and let cool completely on a wire rack before frosting and decorating.
For the icing: Beat together the cream cheese, butter, powdered sugar, vanilla and lemon juice in a stand mixer on medium-high speed (or with a hand mixer) until light and fluffy, 3 to 4 minutes. Divide the icing between two bowls. Melt the chocolate over a double boiler and set aside to slightly cool. Add the melted chocolate to one of the bowls of cream cheese icing and thoroughly mix to combine. Fill one pastry bag fitted with a star tip with the chocolate cream cheese icing, and another fitted with a star tip with the regular cream cheese icing.
To garnish: Fill a pastry bag with the chocolate-hazelnut spread. Cut a small hole in the center of each cupcake and fill with the chocolate hazelnut spread. Pipe some of the regular cream cheese frosting onto half of the top of the cupcake, and some of the chocolate frosting on the other half so it’s two-toned, like a black-and-white cookie. Garnish with hazelnuts, pretzels, potato chips and flaked sea salt.