Peel and devein half of the shrimp (about 8-12 pieces), including the tails. Cut them into bite-sized pieces and refrigerate until needed. Reserve all the shells.
Heat olive oil in a large Dutch oven or heavy-bottomed pot over medium-high heat. Add the shell-on shrimp and reserved shells, stirring constantly until they turn bright pink, about 2 minutes. Remove from pot and set aside.
Melt butter in the same pot, then add onion, celery, carrots, and garlic. Lower heat to medium. Season with salt and white pepper, and cook, stirring frequently, until vegetables are softened but not browned, about 8 minutes.
Stir in tomato paste, paprika, and cayenne. Cook for 1-2 minutes until tomato paste darkens slightly. Add flour, stirring until vegetables are evenly coated. Turn off heat.
Return cooked shrimp and shells to pot. Add white wine and brandy, turn heat back to medium-high, and stir until most liquid has evaporated.
Add water, bay leaf, and thyme sprig. Season again with salt and white pepper, then cover and simmer for 20 minutes.
Remove thyme and bay leaf. Puree soup until very smooth using an immersion blender or high-powered traditional blender (work in batches and be careful with hot liquids). Blend thoroughly for several minutes to achieve smooth texture.
Set a fine-mesh strainer over another large pot. Pour soup through and press with a ladle to extract as much liquid as possible.
Return strained soup to stove over medium-low heat. Add reserved peeled and diced shrimp, then stir in heavy cream, sherry, and lemon juice. Simmer for 2-3 minutes, just until shrimp are cooked through.
Taste and adjust seasoning as needed. Ladle into bowls and garnish with a drizzle of cream or dollop of creme fraiche, and a sprinkle of chives. Serve immediately.