Preheat the oven to 400° (Fahrenheit)
Carve a clean lid off the top of each pumpkin, then scoop out and clean the insides, reserving seeds for later if you want to roast them as a snack. Lightly salt the pumpkin's walls and rub all over with olive oil.
Slice a thin layer off the bottom if needed to keep pumpkins from rolling, then place on a foil-lined baking sheet and roast for approximately 45 minutes.
Place thinly sliced shallots in a saucepan with enough oil to submerge, then cook on medium-low for approximately 20-25 minutes, stirring often. Once lightly golden brown, drain through a mesh strainer over a medium heatproof bowl, reserving oil for other uses. Shake shallots onto paper towels and gently blot.
Heat large pot over medium-high heat until hot, then sauté the bell peppers, onion, and habaneros with some oil and for about three minutes.
Reduce heat to medium-low, add a pinch of salt, and gently sauté for about 20 minutes, or until vegetables are starting to brown and sweeten.
Make some space in the center of the pot, then add the garlic, ginger, and curry paste with some more oil. Sauté for another minute or two, until fragrant.
Add coconut milk and puréed pumpkin and thoroughly stir.
Turn heat up to medium and bring to a simmer, then stir in lime juice, fish sauce, tofu, and half of the crab meat. Simmer for a few minutes.
Place each roasted pumpkin on a small plate, then ladle in soup. Add a nice pile of crab meat on top and garnish with generous herbs and fried shallots.
Serve with lid on and enjoy.