Preheat your oven to 350°F (175°C). Grease three 8-inch round cake pans, line the bottoms with parchment paper rounds, and lightly flour the sides.
In a medium bowl, whisk together the flour, baking powder, and salt until evenly combined. Set aside.
In a large mixing bowl, beat the softened butter and 2 cups sugar with an electric mixer on medium-high speed for 3-4 minutes until light and fluffy. Add the eggs one at a time, beating well after each addition. Mix in 1 tablespoon lemon zest and lemon juice.
With the mixer on low speed, alternate adding the flour mixture and buttermilk in three additions, beginning and ending with flour. Mix just until no streaks remain — do not overmix.
Divide the batter evenly among the three prepared pans (about 2 cups per pan). Bake for 25-28 minutes, until a toothpick inserted in the center comes out clean and the tops spring back when lightly pressed. Cool in pans for 10 minutes, then turn out onto wire racks to cool completely.
While the layers cool, make the blueberry filling. In a small saucepan, combine 1.5 cups blueberries, 1/3 cup sugar, and cornstarch. Cook over medium heat, stirring frequently, until the berries burst and the mixture thickens to a jam-like consistency, about 8-10 minutes. Remove from heat and stir in the remaining 0.5 cup fresh blueberries. Let cool completely.
For the frosting, beat the softened cream cheese and 1 cup butter together on medium speed until smooth and creamy, about 2 minutes. Gradually add the powdered sugar, one cup at a time, beating on low speed. Add 2 teaspoons lemon zest and heavy cream, then beat on high for 1-2 minutes until light and fluffy.
To assemble, place one cake layer on your serving plate. Spread half the blueberry filling over the top, leaving a 1/2-inch border around the edges. Add the second layer and repeat with remaining filling. Top with the third layer.
Apply a thin crumb coat of frosting over the entire cake to seal in crumbs. Refrigerate for 30 minutes, then frost the cake with the remaining frosting, using a spatula or bench scraper to smooth the sides and top.
Refrigerate the assembled cake for at least 2 hours before slicing to let the layers set. Remove from the refrigerator 30-60 minutes before serving for the best flavor and texture.