Heat the olive oil over medium-high heat in a fairly large pot. Add the onion and sauté for about 5 minutes.
Stir in the garlic and cook until fragrant; about 30 seconds.
Add the chicken broth, half-and-half, pasta, and Italian seasoning. Increase the heat to high and bring to a boil. Once it's boiling, reduce the heat to medium and let it simmer for 10 minutes, giving it a stir every so often.
The pasta should be about done - give it a taste, and if it's nearly cooked, add in the ham and peas. Cook it for another 5 minutes or so until the ham and peas are warmed through.
Serve immediately with parmesan if desired.
This recipe is accurate as tested on my stove. However, stoves (especially electric ones) can vary, so if you notice the pasta is not yet cooked and there doesn't seem to be enough liquid, I suggest using your best judgment and adding a bit more liquid as needed, a half cup at a time until the pasta is cooked.
Some pastas absorb more liquid than others, so I suggest sticking to the type of pasta I recommend in this recipe.