Preheat oven to 350°F (175°C) and line a 12-cup muffin tin with paper liners.
In a medium bowl, whisk together the flour, baking powder, baking soda, and salt.
In a large bowl, beat the butter, granulated sugar, and honey until pale and fluffy, about 2 minutes.
Beat in eggs one at a time, then stir in vanilla extract. The mixture may appear slightly curdled.
Alternate adding the flour mixture and buttermilk to the wet ingredients, mixing just until combined.
Spoon a heaping tablespoon of batter into each cupcake liner, add a teaspoon of peach preserves in the center, then top with more batter until liners are 3/4 full.
Bake for 18–20 minutes or until tops spring back and a toothpick inserted at the edge comes out clean. Cool in pan 5 minutes, then transfer to a wire rack.
To make the frosting, beat cream cheese until smooth, gradually add powdered sugar, then milk until spreadable. Chill briefly for piping if needed.
Frost cooled cupcakes, top with diced peaches, drizzle with honey, and sprinkle with coarse sugar crystals.