Trim yucca and peel with vegetable peeler, removing barklike exterior as well as pink layer underneath, leaving only the bright white root. Chop crosswise into large chunks. Place in large saucepan or medium soup pot, and cover with water. Add ½ teaspoon salt and bring to a boil; reduce heat, cover, and simmer 30 minutes, or until very tender. Drain and return to saucepan; let cool 10 minutes. Use fingers to break yucca into smaller chunks and remove any tough, fibrous strings. Add coconut milk and purée with immersion blender or in a f ood processor. Return to pot and set aside.
Remove shells from shrimp (reserve shells). Transfer shrimp to a bowl and toss with half of the lime juice and 2 pinches of sea salt. Transfer shells to a second saucepan and add 3 cups water. Trim stems from cilantro and add stems to pot, reserving tops. Bring to a boil, skimming off any foam. Reduce heat and simmer uncovered for 20 minutes. Strain and reserve shrimp stock; discard solids.
Place a heavy, deep skillet over medium-high heat; add 1 tablespoon olive oil. Once hot, add one-fourth of onions; sauté 1 minute. Add shrimp in a single layer, working in batches if necessary, and cook 3 minutes, or until just opaque, turning once. Transfer to a plate. Return skillet to heat and add remaining 1 tablespoon olive oil. Add remaining onion and garlic and sauté, stirring frequently, about 4 minutes, until translucent. Stir in bell pepper, tomatoes, and chiles (if using); cook 3 more minutes, stirring occasionally. Deglaze pan with reserved shrimp stock, cover, and simmer 10 minutes. Remove and discard chiles.
Add reserved yucca purée to mixture in skillet; stir until well combined. Stir in palm oil (or olive oil) and fold in shrimp. Cook until heated through. Add ½ cup cilantro leaves and remaining lime juice. Season to taste with salt and pepper.