Preheat oven to 350°F. Line baking sheets with parchment paper.
Beat the softened butter and granulated sugar using a hand mixer or a stand mixer fitted with a paddle attachment for 2 minutes until creamy and light. Add eggs and vanilla extract, then stop and scrape the bottom and sides of the bowl so everything mixes together evenly.
Add the flour, cocoa powder, baking powder, and salt. Mix on medium-low speed just until everything is evenly combined. You may need to stop and scrape the bottom of the bowl again.
Use a large cookie scoop to measure ¼ cup of dough for each cookie and arrange them on the baking sheet spaces a few inches apart. Refrigerate for 20-30 minutes, then flatten slightly into puck shapes before baking since these don't spread a lot.
Bake for 8-10 minutes until just set around the edges. Don't overbake. Allow to set up on the baking sheet for 10-15 minutes.
While the cookies cool, make the frosting by beating the butter until creamy. Add the cocoa powder and powdered sugar, mixing slowly until it starts to combine. Then add the milk and vanilla extract to thin it out enough to be a nice spreadable consistency. Because the marshmallow fluff is so soft, you want your frosting on the softer side. If it is too stiff it will be difficult to spread.
Once the cookies have cooled completely, top each cookie with about 1 tablespoon of marshmallow fluff to within about ½-inch of the edge of the cookie. You don't really need to spread it out because it will naturally spread a bit once you add the frosting on top. I tend to go overboard on the marshmallow fluff because I love it so much and it spills over the edges of the cookies so try hard to stick to 1 tablespoon, but know that I understand and relate to the desire to pile it on.
Gently dollop a spoonful of the chocolate frosting on top of the marshmallow fluff. Use a knife to gently spread it toward the edges of the marshmallow covered cookie, leaving a border of marshmallow fluff visible around the edges.