Add the olive oil and butter to a heavy-bottom large saucepan, warm on medium heat. Add the sliced onions and fresh ground pepper. Cook the onions over medium heat until they are very soft and reduced in volume, about 20 minutes. While the onions cook, mince 2 of the garlic cloves and set aside.
Reduce the heat to medium-low, push the onions aside in the pot and add the garlic and brown sugar to the pan. Sauté the garlic until fragrant (about 2 minutes), then mix with the onions. Cook the onion mixture for another 20-30 minutes, stirring frequently, or until the onions are deep golden brown in color. Do not let them crisp.
Add the beer, 3 1/2 cups of the beef stock, Dijon mustard, bay leaf and thyme to the onions. Simmer, uncovered, for about 15 minutes.
Mix the remaining 1/2 cup of beef stock with the cornstarch. Whisk until blended. Slowly drizzle the cornstarch mixture into the onion soup, gently stirring to prevent lumps. Season the soup with fresh ground black pepper, check the seasoning and add a little salt if needed. The soup should have thickened slightly at this point. Remove the bay leaf and discard.
Preheat oven to 350 degrees.
To serve, brush the baguette slices with olive oil and bake on a cookie sheet until toasted and golden brown. Cut the remaining garlic clove in half. Rub the surface of the toasted baguette slices with the cut side of the garlic. Ladle the soup into 6 ovenproof bowls and place on a baking sheet. Preheat oven to broil. Float two slices of the toasted baguettes on top of each bowl. Cover the bread with slices of Gruyère. Top the bread and soup with the shredded cheese. Place the bowls of soup under the broiler, watching carefully, until the cheese is bubbly, melted and lightly browned. Sprinkle with fresh chopped parsley and serve immediately.