Preheat oven to 400°F (200°C).
In a small bowl, combine olive oil, Panko breadcrumbs, and ¼ cup Parmesan; set aside.
Place cauliflower florets in a steamer basket over boiling water. Cover and steam until crisp tender, 4–5 minutes. Drain well.
In a large skillet, melt butter over medium heat. Add garlic and shallot; cook, stirring often, until fragrant, about 2 minutes.
Whisk in flour and thyme; cook until lightly browned, about 1 minute.
Slowly whisk in milk, heavy cream, and Dijon mustard. Cook, whisking constantly, until slightly thickened, 4–5 minutes. Season with salt and pepper.
Stir in steamed cauliflower, mozzarella, and remaining ¼ cup Parmesan until cheese has melted.
Transfer mixture to a baking dish. Sprinkle evenly with the Panko mixture.
Bake 20–25 minutes, until golden brown and bubbly.
Garnish with fresh thyme and serve warm.