The villain bought in $2 and was getting lucky with silly hands, but I only saw about 5 hands he played. Based on almost no read, at what point should I have gotten off or reraised here? This is the same like he took when he sucked someone out (got runner runner) with j8s two hands before.

PokerStars No-Limit Hold'em, $0.10 BB (5 handed) Hand History Converter Tool from FlopTurnRiver.com (Format: FlopTurnRiver)

BB ($49.05)
Hero ($10.35)
MP ($10)
Button ($10.45)
SB ($13.85)

Preflop: Hero is UTG with A, K.
Hero raises to $0.35, 1 fold, Button calls $0.35, 1 fold, BB calls $0.25.

Flop: ($1.10) Q, A, 2 (3 players)
BB checks, Hero bets $0.5, Button raises to $1, BB folds, Hero calls $0.50.

Turn: ($3.10) 9 (2 players)
Hero checks, Button bets $2, Hero calls $2.

River: ($7.10) 7 (2 players)
Hero checks, Button bets $3.9, Hero calls $3.90.

Final Pot: $14.90