Preheat oven to 350 degrees F.
In a saucepan over medium heat, add olive oil. Add the shrimp shells and toast until opaque and a little crunchy, about 10 minutes, tossing frequently. Add half the onion, the carrot and celery and cook, stirring, until softened. Stir in tomato paste and cook, stirring, about 2 minutes. Add the water, bay leaf, and peppercorns, bring to a boil, reduce the heat and simmer, partially covered, about 30 minutes. Strain; you should have about 2 cups stock; if more, return stock to clean saucepan and reduce over medium heat.
In a skillet, melt on medium heat the 4 tablespoons of butter, add the remaining onion, and cook until softened and translucent, about 3 minutes. Add garlic, cumin, thyme, basil, red pepper, and paprika and cook another 2 minutes. Stir in the lemon juice. Carefully arrange shrimp in a pan large enough to hold them without overlapping.
Pour seasoned butter over shrimp and mix well with shrimp. Bake until just cooked through, about 10 minutes. (Do not overcook or you will have rubbery shrimp.)
Remove shrimp from pan and place pan back on stovetop over medium-high heat to make the sauce. Add beer and 1 cup shrimp stock to the seasoned butter, cook until reduced to 1/3 volume.
Whisk in cold stick butter, 2-3 pats at a time, until sauce holds together. Remove from heat and adjust seasoning with salt, pepper and hot sauce. Arrange shrimp on a platter and drizzle with sauce. Garnish with sliced green onion.