yeah you prob shouldve raised or folded preflop. Either you have the best hand or you dont, when you called only preflop you decided that you didnt have the best hand, but you cant ask for a much better flop.

Ya mon id say you did the right thing on the flop but i wouldve folded preflop if you were getting a funny feeling from his 3 bet.