In a bowl, beat the cream cheese with 2 tablespoons of sugar and 1/2 tablespoon vanilla until smooth and lump-free. Chill while you make the batter.
Prep dry mix
Whisk together the flour, baking powder, and salt in a medium bowl.
Mix wet ingredients
In a separate bowl, whisk the milk, eggs, and melted butter until combined. Add 1/2 tablespoon vanilla.
Combine batter
Pour the wet mixture into the dry ingredients and fold gently until just combined. Avoid overmixing — the batter should be thick but spoonable.
Fold in peaches
Gently fold the diced peaches into the batter so they’re evenly distributed without breaking up.
Heat the oil
Heat 2–3 inches of oil in a heavy pot or deep fryer to 350–375°F (175–190°C) using a thermometer for accuracy.
Fry the donuts
Drop spoonfuls of batter into the hot oil and fry until golden brown, about 2–3 minutes per side.
Drain
Remove with a slotted spoon and drain on paper towels. Toss in cinnamon sugar while still warm if desired.
Fill with cheesecake
Transfer cheesecake filling to a piping bag. Once donuts are cool enough to handle but slightly warm, pipe filling into each donut until it feels slightly heavy.
Notes
Best served warm. Store leftovers in an airtight container in the refrigerator for up to 2–3 days. Freeze unfilled donuts for up to 1 month.