First of all, this is the problem with playing low pairs. When you hit a set you can't raise for value (because you never make top set).
You need to look at playing hands where you can get paid off, and I don't think this is one of them. Whilst the ace high flush draw is nice, it's not enough by itself, and your pair of threes can get you in trouble sometime.
However this is the kind of flop where someone might take a shot with a big wrap here or a J9xx hand (especially something like JT98).
Given how the turn card is a complete blank and villain bets full pot into you again, you should make a decision here about what to do with your hand. If you want to play, then raise the turn all in (you will be left with $10 on the river which you're never folding no matter what hits).
I think calling the turn is the worst of all the options (raise ---> fold ---> call) because you're allowing the hands you beat (top 2 pair and big straight wrap) to see a cheap river card and you're only going to stack off with a higher set anyway on the river.
As played however, you now beat nothing so you can't bet the river (all the draws hit, and your opponent checking is clearly him representing a higher set in my opinion) so all you can do is check behind on this river.