Fry onion, shallots, and fennel in olive oil for 8-10 minutes, then stir in garlic for 2 minutes.
Add fish bones and fry for another 4-5 minutes while stirring.
Stir in prawn shells, tomato purée, tomatoes, passata, herbs, stock, and sugar, then simmer for 30 minutes.
Brush ciabatta slices with oil, season, and bake for 5-6 minutes until golden.
Blend garlic, egg yolks, and salt in a food processor.
Gradually stream in vegetable oil and extra virgin olive oil while blending until thick.
Blend in cayenne pepper, tomato purée, and lemon juice.
Puree the cooled soup with a hand blender and strain through a fine sieve.
Reheat soup gently while stirring in the crabmeat and cream.
Boil bantam eggs in their shells for 20 seconds then remove.
Poach the eggs in simmering water with vinegar for 2-3 minutes, then drain.
Top crostini with rouille, gruyère, and a poached egg.
Ladle soup into bowls and serve with the topped crostini.