Langston Galloway and DeAndre Bembry added 13 points for the Hawks (4-2).
"I liked that our guys today, they did little things like hustle plays, getting on the floor, rebounding and stuff," Roberts said. "Get that confidence up."
Washington State (3-4) got 25 points from DaVonte Lacy. The junior guard has 10 consecutive games of double-digit scoring, including all seven this season.
St. Joseph's went ahead 66-65 when Roberts had a dunk and made a free throw to complete a 3-point play with 3:22 to play. Roberts made it 68-65 with another slam on the Hawks' next possession.
After Roberts had a rebound basket, Lacy's layup cut the Cougars deficit to 70-67 with just over a minute to play. Roberts has scored in double-figures seven games in a row.
"I just tried to go as hard as I could," Roberts said. "I think if I go hard, good thing will always happen."
St. Joseph's secured the win by making two free throws over the final 30 seconds.
"We comeback, take a lead and that last four, five, six minutes, we got outplayed," Washington State coach Ken Bone said. "I thought St. Joseph's just outplayed us down the stretch when things were getting tight. A critical part of the game, we've got to execute on both ends of the floor and they executed. We didn't execute as well as we needed to win the game."
Washington State tied it at 52 on Lacy's layup. Josh Hawkinson's basket and a 3-by Lacy then put the Cougars up 61-55 with 5:48 remaining.
Bembry had a pair of 3-point plays and Galloway connected on a long-range jumper to help St. Joseph's go ahead 49-44 8 minutes into the second half.
Lacy and Dexter Kernich-Drew both made 3's during a second-half opening 14-4 run that gave Washington State a 42-38 lead with 16 minute left.
Halil Kanacevic had seven points as St. Joseph's took a 34-28 halftime lead. His 3-point play gave the Hawks a 32-24 advantage 3 1/2 minutes before the break.