Heat the oven to 350°F. Line two standard muffin pans with 20 paper liners. Spread the peanuts on a sheet pan and toast for 5–6 minutes until fragrant, then cool and finely chop.
Make the frosting first so it can set: In a stand mixer with the paddle, beat the butter on medium speed until creamy, about 2 minutes. Beat in the peanut butter for 1 minute until completely smooth.
Add the powdered sugar in three additions, alternating with the milk and vanilla, mixing on low just until incorporated after each addition. Beat in the honey, then increase speed to medium-high and whip for 1–2 minutes until light. Fold in 1/2 cup marshmallow creme just until streaky to create a swirl. Transfer to a piping bag and refrigerate 20 minutes to firm slightly.
For the cupcakes, whisk the flour, baking powder, and salt in a bowl. In a separate large bowl, whisk the sugar, oil, and eggs vigorously for 2–3 minutes until paler and slightly thick. Whisk in the yogurt and vanilla.
Stir the vinegar into the warm milk. Add the dry ingredients to the egg mixture in two additions, alternating with the milk mixture, beginning and ending with dry. Fold just until the flour disappears, then let the batter rest 5 minutes to hydrate.
Portion the batter into liners, filling each about 2/3 full. Bake 16–18 minutes, rotating pans halfway, until the tops spring back and a toothpick comes out with a few moist crumbs. Cool in the pan 5 minutes, then transfer to a rack to cool completely.
Fill the cupcakes: Use a small paring knife to cut a 3/4-inch-wide, 1-inch-deep cone from the center of each cupcake. Spoon or pipe marshmallow creme into each cavity, then trim and replace the cake cap. Tip: Lightly oil your spoon or piping tip to keep marshmallow creme from sticking.
Frost and finish: Pipe a tall swirl of the chilled peanut butter–marshmallow frosting on each cupcake. Roll the sides of the frosting in the chopped peanuts and finish with a tiny pinch of flaky salt, if using.