Heat a large pot over medium-low heat and add the olive oil and butter. Once melted, add in the onions, garlic, salt and pepper, stirring to coat. Cook for 5 to 6 minutes, until the onions softened and begin to turn translucent. Increase the heat to medium and add in the flour, whisking constantly for 1 to 2 minutes until it is evenly dispersed to create a roux. Cook the roux until it is fragrant and begins to turn golden in color. Pour in the chicken stock, whisking constantly. Add in the corn. Increase the heat to medium-high and stir until the liquid thickens a bit. Bring the soup to a boil and cover, then reduce it to a simmer and let it cook for 10 minutes. Remove the lid and stir in the half and half and the cheddar. Stir continuously until the cheese melts. Add in the nutmeg and taste the soup. Season it additionally with salt and pepper if desired. Serve immediately with crumbled bacon and gorgonzola on top.