Heat olive oil in a large pot or deep skillet over medium-high heat. Add the sliced sausage and cook until it begins to brown, about 3-4 minutes.
Add the diced onion to the pot and cook with the sausage for another 2-3 minutes until the onion becomes translucent.
Stir in the garlic and cook for 30 seconds until fragrant. Be careful not to let it burn.
Pour in the chicken broth and milk, then add the pasta, Italian seasoning, salt, black pepper, and red pepper flakes (if using). Stir to combine.
Bring the mixture to a boil, then reduce heat to medium-low. Cover and simmer for about 10 minutes, stirring occasionally to prevent sticking. The pasta should be about halfway cooked.
Add the broccoli florets on top of the pasta (don't stir yet), cover again, and cook for another 5 minutes until the broccoli is bright green and tender-crisp.
Stir everything together, then reduce heat to low. If the mixture looks too dry, add a splash more broth or milk.
Add the shredded cheese and Parmesan a handful at a time, stirring until melted and smooth before adding more. This prevents the sauce from becoming grainy.
Remove from heat once all cheese is incorporated and the sauce is creamy. Let it stand for 5 minutes to thicken.
Taste and adjust seasonings if needed. Garnish with sliced green onions before serving.