Heat a large pot over medium heat and add the olive oil and butter. Stir in the onion, garlic, salt and pepper. Cook, stirring often, until the onions are soft and even begin to caramelize slightly, about 10 to 15 minutes. Add in the potatoes, stock and ale. Bring the mixture to a boil, then reduce it to medium-low and let it simmer until the potatoes are fork tender, about 20 minutes. Turn off the heat.
Carefully pour the contents in a high-powered blender (if needed, you can do it in two batches). Blend until smooth. Pour the soup back into the pot and heat it over low heat, stirring well. Stir in the grated cheese, one handful at a time, until it completely melts. Make sure you add the cheese SLOWLY over low heat, so it melts right into the soup. Taste and season additionally if desired – you may want a little more salt and pepper depending on the saltiness of your cheese!
To serve the soup, drizzle 1 tablespoon of cream over top. Top with a handful of the beer battered leeks, a pinch of crushed red pepper flakes, some fresh herbs and pepper. Serve immediately.