Melt butter in a medium pot over high heat. Add onion and cook until softened, about 4 minutes. Add broccoli and broth and cook, covered, until florets are tender, about 7 minutes.
Spoon out 1 cup small florets and reserve. Add 1/4 cup cheese, the salt, pepper, and half-and-half to pot. Working in batches, purée soup in a blender until very smooth, about 2 minutes per batch.
Divide mixture among 4 bowls. Garnish each with reserved florets, a sprinkle of remaining 1/4 cup cheese, and a few croutons.