The top-ranked Williams, seeking her sixth Key Biscayne title and her first since 2008, was down a service break trailing 4-1 in the second set before she swept the final five games of the set. She also won the last three games of the match and served it out at love with three aces.
Williams' opponent in the quarterfinals will be No. 5-seeded Li Na, who beat wild card Garbine Muguruza 7-6 (6), 6-2.
Williams was impassive and flat on her feet in the early going against the No. 13-seeded Cibulkova, and the half-empty stands made for a sleepy atmosphere.
"Bor-ing!" one spectator shouted.
"I was just struggling," Williams said. "I was making so many errors and couldn't pull myself together."
During changeovers, disco, salsa and Coldplay blared from the public address system, and something finally got Williams going. Her shots began landing consistently just inside the lines, and she won 10 consecutive points to surge ahead in the second set.
She showed emotion for the first time when she hit a backhand winner to reach set point, screaming encouragement at herself. The crowd responded with a roar.
Williams won the next point with an ace, and when a replay confirmed the call to seal the set, she hollered again and spiked a spare ball.
Her father and coach, Richard, stroked his chin as he watched the comeback from the photographers' pit.
"I saw my dad on the sideline, and he was so calm and so relaxed," she said. "And I was just like, 'OK, Serena, you can do this.' I took that energy and started playing better."
Williams went ahead to stay by breaking serve at love for a 2-1 lead in the final set. After closing out the victory with a 116-mph ace, she swung her fist in satisfaction.
Williams lost serve five times but hit 14 aces. She won despite 52 unforced errors, including 27 on her backhand.