Preheat the oven to 350 degrees F.
Line a cupcake/muffin pan with paper liners, then set it aside.
In a medium bowl, stir together the flour, cornstarch, baking powder, pumpkin pie spice, cinnamon, and salt. Set the bowl aside.
Using an electric mixer, beat together the butter and sugar until creamy. Add in the eggs and beat together until it becomes light and fluffy.
Gradually add the flour mixture and the milk to the butter-sugar mixture. Continue mixing for about 30 seconds, then whisk in the pumpkin. Scrape the sides of the bowl if necessary.
Using an ice cream scoop, add the batter into the prepared liners, filling about ⅔ full.
Bake for 18-20 minutes, until the cupcakes spring back when lightly touched. Or when a cake tester comes out clean.
Allow the cupcakes to cool in the pan for about 5 minutes, then transfer the cupcakes to a cooling rack to cool completely.
While the cupcakes cool, make the cream cheese frosting.
In a medium bowl, or using a stand mixer, on medium speed, beat together the cream cheese, butter, milk, and vanilla, until it is smooth and creamy.
Add in the powdered sugar, one cup at a time, until it reaches desired consistency for frosting. (To create rosettes or other piping designs, you will want the frosting thicker so it holds the shape.)
Using a small spatula, spread the frosting on the cooled cupcakes. You can also pipe it on if desired.
Drizzle caramel syrup on the top of each cupcake, and then sprinkle with chopped pecans. (if using)
The frosted cupcakes will keep in an airtight container in the refrigerator for 4-5 days.