DO-AHEAD TIP: Cook ham, if needed.
Cook pasta according to package directions; drain and set aside.
In a saucepan, melt butter over low heat; remove from heat, add flour, salt, and pepper then gradually add milk, stirring until well blended. Return saucepan to low heat and cook, stirring constantly, until sauce is thick and smooth. Continue to simmer for about 5 minutes then add Cheddar cheese, blending well into the sauce.
Meanwhile, heat the olive oil in a large skillet over medium heat; sauté onion until translucent. Add broccoli florets and ham and cook for about 5 minutes. In a large serving bowl, combine pasta, broccoli/ham mixture and cheese sauce; blend well.
Sprinkle with Pepper Jack cheese then toss gently and serve.