Heat oven to 375 degrees. Melt 1 tablespoon of butter over medium heat in a large skillet. Add panko breadcrumbs and toast until they brown. Stir every so often to prevent burning. Remove from skillet and set aside.
Bring a large pot of salted water to a boil. Cook the pasta two minutes less than package directions. Drain and set aside to cool. Hot pasta absorbs more sauce, so you'll get a creamier finished dish if the pasta has time to sit. You can also make the pasta ahead of time and store in an airtight container in the refrigerator.
In a large skillet, melt 2 tablespoons of butter over medium heat. Add the mushrooms, stir to coat and season with salt and pepper. Cook until they brown mostly undistributed to caramelize, about five minutes. Remove the mushrooms from the skillet and set aside.
As the mushrooms cook, stir together the ricotta, Parmesan and egg. Set aside.
Add the remaining 4 tablespoons of butter to the skillet over medium heat. Once melted, add the garlic and cook for 30 seconds, stirring constantly. Whisk in the flour. Continue to whisk constantly for three to five minutes to cook out the flour flavor and create a smooth mixture.
Slowly pour in the milk and heavy cream, whisking constantly to smooth out lumps. Add the Dijon mustard and nutmeg. Bring to a simmer while whisking frequently.
Once it simmers and thickens, turn off heat and add in 1 cup of Gruyere and 1 cup of fontina and constantly stir until the cheese melts. Stir in truffle oil. Start with a tablespoon but add extra if you'd like a stronger truffle flavor. Season with salt and pepper to taste. Stir in the pasta and mushrooms.
In a greased 9-inch-by-13-inch baking dish, pour in half the pasta mixture. Spread the ricotta mixture on top. Add the remaining pasta mixture on top of the ricotta. Top with remaining Gruyere and fontina and sprinkle the panko breadcrumbs on the cheeses.
Bake uncovered until bubbly, about 20 minutes and serve immediately for a creamier, saucier dish. If you'd like a less saucy pasta, allow to sit for about 10 minutes under foil. Drizzle with more truffle oil and fresh parsley on top if desired. Enjoy!