Williams gave Los Angeles a 104-100 advantage with the second of two from the line with 14.4 seconds left on the clock. After Chase Budinger connected on a long three-pointer inside the final 10 seconds, Williams iced a pair from the line for a 106-103 lead.
Budinger attempted a three at the buzzer, but the shot was far off target to end the game.
Eric Gordon led the Clippers with 24 points in his first game since missing significant time with a right wrist injury. Gordon last played on January 22.
Blake Griffin registered his 52nd double-double of the season with 20 points and 14 rebounds while Chris Kaman added 21 points and nine rebounds in a reserve role for LA, which snapped a five-game skid.
Kyle Lowry paced Houston with 24 points and 11 assists. Courtney Lee added 18 points in a reserve role while Kevin Martin and Luis Scola both finished with 12 points in the loss.
The Rockets had a five-game winning streak snapped.