Preflop
Sounding like a broken record here, but raising to only 3BB over a limp is way to small. You are pricing him in to call you with literally any two cards. The absolutel minimum raise size with one limper in the pot is 4BB. And yes I do want to raise it up here. A9o is not a hand, which play well postflop at all, and even less so in a multiway pot.
Flop
You flop top pair top kicker on a wet board. Not betting for value / protection is a pretty big mistake.
Turn
You were lucky to get an extremely clean turn card, and now someone leads into you, but its for less than 1/3 of the pot. As played I prefer to raise this up for value and protection. Your hand is certainly good enough for two streets of value, and I prefer to get them now, before the board screw me somehow.
River
As this hand played out, you had no idea, what was going on, and you kind of had to call, because he might be doing some weird blocker bet with his A8 or K5. If on the other hand you bet flop and bet turn, then you charge him for his draw, and if he donk bets the river, you would have a fairly easy fold. If he check to you again, you check back and get the bad news without paying him off.
__________________
|