To begin, heat olive oil in a saucepan over medium heat. Add onions, garlic, and bay leaves, cooking until onions are soft and golden. Stir regularly to prevent burning. Transition to adding liquids.
Pour in beer, beef stock, tomato passata, and tomato paste. Stir to combine, then add port wine, paprika, piri piri, sugar, salt, and pepper. Mix well and bring to a gentle simmer. Move to slow cooking.
Let the sauce simmer gently for 20–30 minutes, stirring occasionally. This slow cooking deepens flavour and softens the onions. If the sauce is too thin, whisk in the cornflour slurry. Proceed to blending.
Remove bay leaves. Use a stick blender to puree the sauce until smooth, then strain for a silky finish. Return to low heat to keep warm while preparing the sandwich components.
In a skillet over medium to high heat, grill the steaks for 2–3 minutes each side until just cooked through. Cook sausages until browned. Set aside and keep warm. Move to bread preparation.
Butter each bread slice lightly and toast on a griddle or frying pan until golden on both sides. This helps keep the sandwich structure firm. Prepare for layering.
On a toasted bread slice, layer cured ham, mortadella, steak, and sausage. Top with another bread slice. Cover the sandwich completely with cheese slices. Move to melting the cheese.
Place sandwiches on an oven safe tray. Heat in a preheated oven at 180°C for 5–7 minutes, or until cheese is fully melted and drapes over the sides. Proceed to saucing.
Place each sandwich on a deep plate. Pour hot sauce generously over the top, allowing it to soak into the bread slightly. Transition to garnishing.
Serve hot, optionally topping each sandwich with a fried egg. Add French fries on the side to complete the experience. Presentation tip: Keep extra sauce in a jug for those who want more.