Peel the shrimp, reserving the shells. In a large pot, melt 2 tablespoons of butter over medium heat. Add the reserved shrimp shells and cook until pink, about 3 minutes.
Add the chopped shallots and minced garlic to the pot, sautéing until fragrant and translucent.
Stir in the tomato paste and cook for 1 minute until lightly caramelized. Pour in the brandy or dry sherry to deglaze the pot, scraping up any browned bits from the bottom.
Pour in the broth and bring to a simmer. Reduce heat to low, cover, and let simmer for 20 minutes.
Strain the broth through a fine-mesh sieve into a bowl, pressing the shells to extract all liquid. Discard the solids and return the smooth liquid to the pot.
Heat the remaining 2 tablespoons of butter in a skillet. Sear the peeled shrimp for 1-2 minutes per side until just cooked through. Set aside a few whole pieces for garnish, and chop the rest to add to the soup.
Stir the heavy cream and chopped shrimp into the strained broth. Warm over low heat (do not let it boil). Season with black pepper.
Ladle the hot soup into bowls. Garnish with the reserved seared prawns, a drizzle of chili oil, and chopped green onions.