You're not weak here, you played it well, he just made good use of the cards in play. Looks like he was initially hoping a Q would fall and give him a straight. Third spade shows up and he thinks hey I have ace of spades lets see if he fears that might have hit nut high flush, so he re-raises you on the turn. Then the check on the river tells him everything he wants to know and he shoves you out.

You didn't do anything wrong here. How do you know he didn't hit a straight or flush? He played it all the same way he would have played as if he had hit with As4s. You folded a measly two pair on a board that had straight and flush possibilities.

Maybe another bet on the river would have prevented him from bluffing but it also looks like there was some chatter on the table labling you as a bluffer so I wouldn't risk it. Unless they were just making a joke about your name but still, check/fold on the river is about all you can do without some super accurate read on this guy.