Place rack in the middle of oven and preheat to 350 degrees F. Line 12 muffin cups with cupcake papers.
In a medium bowl, sift together the flour, cocoa powder, baking powder, and salt, and set aside. Using a mixer, cream the butter and 3/4 cup sugar until pale yellow, about 1 minute. Add the egg and stir until just combined. Gently add half of the flour mixture and stir until just incorporated. Mix in the milk. Add the remaining flour mixture and stir until combined. Set aside.
In a small bowl, mix together the cream cheese, 2 tablespoons sugar, and vanilla. Stir in the chocolate chips and walnuts.
Fill prepared cupcake liners with enough chocolate batter to just cover the bottom. Add a dollop of the cream cheese filling to each, then top with remaining batter (cream cheese filling should not be visible).
Bake for 20 minutes. Let cupcakes stand in the pan for 3 minutes and then remove and allow to cool completely on a rack.
Dip each cupcake into the ganache, forming an even layer of frosting. Place in the refrigerator to set, about 15 minutes.
Place a heat-proof bowl over a pot of simmering water, and whisk together the chocolate, cream, and espresso powder (if using). Continue whisking until chocolate is melted and the mixture is thick, about 4 minutes. Remove from heat and let stand for 5 minutes.