Heat the butter and oil in a large, non-stick frying pan over a medium heat. Add the onion and fry for 3 minutes, stirring regularly, until completely softened but not coloured. Sprinkle over the flour and stir the onions well.
In a measuring jug, mix the milk and water. Gradually add 700ml/1¼ pints of the liquid to the onions, stirring after each addition.
Add the potatoes and salt to the pan and season generously with freshly ground black pepper. Bring the mixture to the boil, then reduce the heat until the mixture is simmering. Simmer, stirring regularly, for 10-12 minutes, or until the potatoes are almost tender. Stir in the sweetcorn and leeks and return the mixture to a gentle simmer.
Place the smoked-haddock fillets on top of the chowder and continue to simmer for 10-15 minutes, or until the fish has thawed and the flesh flakes easily when prodded with a knife. (This will depend on the thickness of each fillet.) Turn the fish twice as the fillets simmer, without allowing them to break up if possible.
Carefully remove the cooked smoked-haddock fillets from the chowder using a slotted spoon and set aside in a warm place. (Remove the skin at this point if you prefer.) Stir the remaining milk and water into the pan and return to a simmer, stirring.
If using the eggs, fill a wide saucepan half full with boiling water. Reduce the heat until the water is barely simmering. Carefully crack the eggs into the water one at a time, spacing them well apart. Poach very gently for 3-4 minutes, or until the whites have set but the yolks remain runny. Remove the poached eggs from the pan using a slotted spoon
To serve, spoon the chowder into warm bowls, seasoning again with salt and pepper, if necessary. Top each serving with one of the haddock fillets and a poached egg, if using. Garnish with parsley, if using. Serve with slices of crusty bread.