If you want to play by the book, then your re-raise after the flop was too small. you raised him $2K with the pot being $7K after your raise. He's getting 3.5 to 1 to call. Which is more than enough to chase a flush. Then he tells
you he's chasing a draw by just calling and you give him a free card to hit his draw. Then you pay him off when the flush comes on the river.
My recommendations for the next time, if you are going to re-raise, then raise by at least the amount that is in the pot so he's not getting odds
justifying a call. Second don't give a free card on the turn unless your hand improves to the nuts. And finally, if you do give a free card on the turn don't call when the draw comes on the river.