After a raft of changes coming into the contest, the visitors were slow starters.
The Dragons ran out to a 10-0 lead through tries to winger Maria Paseka and Berry in the seventh and 16th minutes respectively.
When the Warriors got going, though, they looked like a side challenging for a playoff spot.
Payton Takimoana, playing at centre, scored in the 24th minute to get the Warriors on the board. It was a milestone moment for Takimoana, who became the first NRLW player to score in eight-straight games and broke the NRLW single-season try-scoring record with her 12th for the year.
Five-eighth Patricia Maliepo scored three minutes later – the ensuing conversion putting the Warriors in the lead.
They held that two-point advantage until halftime, before the Dragons edged ahead through Berry’s second.
That lead was short-lived, however, with Takimoana scoring a second to give the Warriors an 18-16 lead with just over 20 minutes to go.
However, they weren’t able to close it out down the stretch as errors and penalties welcomed the Dragons into attacking territory.
The hosts struck around the 47th minute to take the lead through hooker Tori Shipton, before Jayme Millard closed the result out in the final minutes.
With two rounds to play, the Warriors remain a top-six chance. However, further results over the weekend could now make achieving that spot a tougher task.
The side will be back in Hamilton next week to host the second-placed Brisbane Broncos, before finishing the regular season in Sydney against the bottom-of-the-table Wests Tigers.
Warriors 18 (Payton Takimoana 2, Patricia Maliepo tries; Maliepo 3 cons)
Dragons 26 (Teagan Berry 2, Maria Paseka, Tori Shipton, Jayme Millard tries; Millard 3 cons)
HT: 12-10.