I stand somewhere in the middle here...
I think the problem might actually be a lack of automatch options. You left that previous table because of some reason (opponents rating too high?) that the client currently doesn't let you express. If it was truly because he's a jerk then blacklisting is indeed a perfectly adequate solution.
Yes, I think this is generally accurate. I don't see the blacklist as a means of "curating" a list of opponents according to my preferences. For me it's a tool to handle abusive players and that's all.
Right now you have the option after each game of deciding (for whatever reason) whether or not to play another game against your current opponent. If you leave the table, you have decided not to play them again. When you get matched with them again anyway, it feels like your decision has been overruled.
A "rematching penalty", as has been suggested, seems like a decent approach that would keep most of the current functionality.
Another approach is to always kick players back to the matching pool after each match. This removes the rematch decision entirely. While some people may not like this approach, because they want immediate "revenge" or whatever, it would also address the perception that players are "too scared" or "un-chivalrous" to allow a rematch.