Preheat oven to 375 F. Place a steamer basket in a pot filled with several inches of water. Carefully cut 1 inch off the top of each artichoke. Cut the bottom of the artichoke to form a flat base. Using kitchen shears, trim off sharp tips from the leaves. Using your hands, gentlypull the leaves away from the middle of the artichoke. With a small spoon or paring knife, scrape away the fuzz from the heart. Discard fuzz. (This can also be done after artichokes are steamed). Drizzle 1 Tbsp of lemon juice inside and over each artichoke. Place the artichokes stem side down in a steamer basket. Steam for approximately 15 minutes, or until tender.(Check for doneness by pulling on an outer leaf. Leaves will come off easily if tender.) Removefrom basket. Set aside to cool.
In a large saute pan over medium-low, melt 1⁄2 cup butter. When butter begins to simmer, add shallots and garlic. Cook until soft, about 3 minutes. Add 1⁄2 cup lemon juice and wine, orsherry if using. Stir. Simmer on low for about 2 minutes. Turn off heat. Add breadcrumbs, 2 Tbsp Parmesan, parsley, basil, salt, pepper and red pepper flakes. Stir. Set aside to cool.
Place the artichokes in a baking dish. Using a spoon, loosely fill the center of each artichoke with the breadcrumb stuffing. Fill in the spaces between the leaves as much as possible with the remainder of the stuffing mixture. Spoon 2 Tbsp melted butter over each artichoke. Sprinkleremaining 2 Tbsp Parmesan cheese. Bake until cheese is melted and breadcrumbs are golden brown, about 15 to 20 minutes. Garnish with paprika and 1 Tbsp parsley.