To Prepare the Seafood Broth:
Peel the shrimp, leaving the heads and last tail segment intact. Set the shrimp aside to use for the bouillabaisse and reserve the shells.
Combine the shrimp shells, and 6 small strips of orange zest and the next 10 ingredients (leek through vegetable stock) in a large, stainless steel saucepan. Bring the broth to a boil over medium-high heat, reduce the heat to low and simmer the stock for 40 minutes. Strain the broth through a fine-mesh sieve, discarding the solids. Stir in the saffron and set the broth aside until ready to use.
To Prepare the Bouillabaisse:
Heat 2 tablespoons of the butter and 6 tablespoons of the extra-virgin olive oil in a Dutch oven. Add the shallots, garlic, and thyme and cook, stirring, for 2 minutes; do not allow the vegetables to brown. Stir in the sliced fennel, carrots, celery, and leeks. Season the vegetables with 1/2 teaspoon of the salt and 1/4 teaspoon of the pepper. Add the bay leaves and orange peels and continue cooking for about 5 minutes or until the vegetables are tender.
Add the clams and tomato quarters, cover, and cook for 2 minutes. Stir in the reserved seafood broth, increase the heat to high, cover and cook for 3 more minutes. Stir in the shrimp, grouper pieces, stone crab claws (if using) snapper jowls and bone-in triggerfish, cover and cook for a few minutes.
Remove the lid and add the remaining 2 tablespoons of butter, remaining 2 tablespoons of extra-virgin olive oil, chopped fennel fronds, basil, and parsley. Season the liquid with the remaining teaspoon of salt and remaining 1/4 teaspoon of pepper.
Arrange the seafood and vegetables attractively in 12 wide soup bowls and ladle about 1/2 cup of the broth in each bowl (enough to come three-fourths of the way up the sides of the bowls.) Top each bowl with 1/2 fried soft shell crab (if using) and 1 grilled sourdough crouton smeared with several tablespoons of rouille. Serve immediately.