Jalen Green scored five quick points to tie it before Williams put the Hornets on top with his step-back 3 to make it 106-103. Ball, who was playing in his first regular-season game since Jan. 26, added two free throws after that to secure the victory.
Green led Houston with 28 points and Alperen Sengun added 25 points and 18 rebounds in his return after missing the last 19 games of last season with a severely sprained ankle.
Hornets: This team has been plagued by injuries in recent years and the problems continued in the opener with young star Brandon Miller sitting out the second half with soreness in his left hip. They'll need to keep him, Ball and Miles Bridges healthy if they hope to return to the playoffs after an eight-year drought.
Rockets: They need to play more consistently for four quarters after leading by double figures for most of the first three quarters before letting the Hornets get back into it late.
The Hornets used a 10-0 run that spanned from late in the third quarter to early in the fourth to close the gap and put themselves in position for the win after trailing for most of the game.
Houston shot 36.9% from the field while the Hornets made 44.7% of their shots.
The Rockets host the Grizzlies on Friday night and the Hornets visit Atlanta.