Here's my general take on Ulis and Williams: I like them both. They're good character guys. They both have potential to help the team. Ultimately, though, they don't move the needle.
Williams is ideal for a third string center, but he's pretty short and can't space the floor. That makes him a questionable back-up. Would I like him on the roster? Definitely. Should we limit our options for real difference makers by holding on to his $5 million cap hold? Not in my opinion.
Ulis is potentially a nice back-up point guard. So is Canaan. So is Payton. So is Knight. So is Harrison. None of them look like good options for a starting point guard. Okobo is the only one with that potential, and even then it's an incredibly optimistic viewpoint and will take time.
There's generally room for three point guards on the active roster. If you can't move Knight (likely), you're paying him $15 million per year for the next two years. That's one spot. Okobo takes another spot. If Ulis takes the third spot, the Suns have arguably the worst point guard situation in the league next year.
We need that third guy to be starter material.
Maybe you bring in a starting point guard, keep Ulis, and use Knight as a shooting guard? Even then, it's arguable whether Ulis is better than Canaan, Harrison, or the shooting guard (Reed, Daniels) that would be pushed off the roster.