Preheat the oven to 350°F and line two baking sheets with parchment paper. In a large bowl, beat the peanut butter, softened butter, and brown sugar until smooth and fluffy. Add the egg and vanilla and mix until well combined.
In a separate bowl, whisk together the flour, cornstarch, baking soda, and salt. Gradually add the dry mixture to the peanut butter mixture and mix just until a soft dough forms. Avoid overmixing.
Cover the bowl and refrigerate the dough for about 1 hour. Chilling helps the cookies hold their shape while baking and makes the dough easier to shape.
Scoop the chilled dough into approximately 1-ounce portions. Roll each portion into a ball, then gently flatten and pinch the center to create a peanut shape. Place the cookies on the prepared baking sheets, leaving about 2 inches between them. Use a fork to make a crisscross pattern on both ends.
Bake for 9–10 minutes, until the cookies are set around the edges but still slightly soft in the centers. For a crisper cookie, bake for another 2–3 minutes. Let them cool on the baking sheet for a few minutes before transferring to a wire rack.
While the cookies cool completely, beat the peanut butter, powdered sugar, heavy cream, and vanilla until smooth and creamy. Transfer the filling to a piping bag or resealable plastic bag with the corner snipped off.
Pair up similar-sized cookies. Pipe about 2 teaspoons of peanut butter filling onto the flat side of one cookie, then gently press another cookie on top. Repeat with the remaining cookies and serve.