Heat oil in a medium saucepan over medium heat. Add cauliflower, garlic, shallots, and 1/2 teaspoon salt; cook until softened but not brown, about 10 minutes, stirring occasionally. Sprinkle with flour; stir to coat well.
Gradually stir in milk; bring to a boil. Reduce heat; gently simmer until cauliflower is very soft, about 15 minutes. Let cool for 5 minutes. Transfer all to a blender, and puree with nutmeg and half the pecorino until smooth, about 2 minutes.
Preheat oven to 400 degrees. Meanwhile, bring a large pot of water to a boil. Cook pasta until slightly tender but not fully cooked, about 5 minutes. Drain well; return to pot. Add ham, broccoli, and cauliflower sauce; toss to combine. Transfer to a ovenproof 3 1/2-quart baking dish. Sprinkle with remaining pecorino, and bake until bubbling in center, about 30 minutes. Heat broiler, and broil until golden brown on top, 1 to 2 minutes. Let cool for 5 minutes. Divide among dishes, top with breadcrumbs, and serve immediately.
The robust flavors of pecorino and smoked ham allow you to use less without sacrificing taste.