Hand reading is very difficult in general and actually it is even more difficult to put someone on certain hand, even poker high stakes pros don't get it right often.
Here is the quote from "Easy Game" book:
Board texture is critical in understanding when to bet out and when to check-raise. If our
opponent flat calls a wet board, his range generally doesn’t include monster hands like sets, two pairs, and
straights. However, if our opponent calls on a dry board (let’s say 8♣6♦4♥) check-raising the turn gets
significantly worse. With fewer draws available, a large portion of his turn-betting range now includes
slow-played sets, two-pairs, and straights. If I had A♣5♣ on an 8♣6♦4♥2♣ board, I’d almost certainly
bet the turn again and plan on folding to a raise as opposed to check-raising.
Like the author says, the board texture is critical here. If the board is wet and villain has a set, they will want to play this hand aggressively to not give drawing hands free cards. Any big bet on dry board will be very polarizing, villain is saying: I have strong hand (set, two pair, top pair, high kicker) or pure air. Especially in single raise pots, it will always hard to guess if this is strong hand or bluff. Then, it is good to have any information about the player style, for example: is he
bluffing too much from what you see? Also, if you are not sure which one is it, of course control the pot.
Bottom line is that if on heads up pots you are constantly afraid of sets or two pairs on boards that shouldn't have hit villain range that often when you have hand like top pair with good kicker, then you will loose value. You have to prepare to loose some pots, especially with slow played sets, that's inevitable
As a bonus video of poker reads, there is a reason why those reads are amazing, it is not that easy to do it: