First off, like others meantioned, 3bet is to small, go something like 4x or at least 3.5x. Make him pay so that when you 3bet your good
hands he is also inclined to call.
Flop bet size is fine in my opinion, but I think these boards are difficult for barreling, since you would want at least some more
equity, such as a backdoor flush draw, but the sizing is fine. If he has neither an ace or a pocket, he will have a difficult time calling even a smaller raise, so you fold out most combos that you beat even with a smaller raise.
But with these types of hands you need to have a plan, so you shouldn't just barrel on any turn, since him calling is a bad sign on a dry board where you 3bet and he called, so if you really want to barrel, you have to pick spots where it makes sense, so on any 5, 4 or 9 you should barrel, otherwise I would suggest to give up.
Turn: Changes nothing for him, you are not making him fold A10+, perhaps with a bigger raise you get him to fold 22 - KK, so if you want to bluff you need to make it bigger, and then give up on river. So by making it bigger, like 3/4 pot or full pot, you should make him fold the hands that have fold equity, and any hands that won't fold river will call, so by making your turn bet large enough you ensure that if river is called, you won't blow off more of your stack, since now some Tens - kings could call, which could be ridden off on the river.
River: I mean, him calling is pretty sick, but also good for you in the sense that you now know he is capable of paying good chunks of value.
I would still say you played this hand in a weird way, and although he called with something that should not call 3 streets of bets, you still could have sized it better throughout, and I think a bigger turn raise would do a better job of getting rid of non ace holdings. OOP is just a bad spot to be in on hands like these, and this hand of course only wins by bluffing, you had some small equity on the flop which turned into no equity on the turn, and against someone willing to call a lot you need to lay it down