Every item in your list is a claim filed against him. Fifteen minutes early against your five, the venue you planned and he complained about, the kiss, the message he ignored, the unmatch. That is not a description of a relationship. It is a case, because what you want is a ruling on a sentence you have not said out loud: am I the one who is flaky, or is he already leaving.
The loop is yours, and it is costing you the actual decision. Tonight gets routed through "does he still want me" when it depends on two other things. Whether you can sit through dinner with cramps, which you already know. Whether you want to see him, which no evidence about his behaviour can settle.
"could make him walk away for good" is the tell. You are pricing a choice about your own body against the risk of a verdict, in a relationship you are still auditioning for.
Mixed signals are not a puzzle with an answer hidden inside. They are information, and the cheapest way to get more is to say the short true thing and watch what he does with it. What you say, and what to do with his answer, is the part I sell: the reply to send and what comes back, $15. Sample and what it includes: https://telegra.ph/Nothing-she-says-would-have-counted-10-27