Jetty Websockectクライアントライブラリは、デフォルトでワーカスレッドが複数立ち上がります。この場合、ライブラリがメッセージを受信し、受信コールバック内が呼び出されたい際に、コールバック内で重たい処理を行うとコンテキストスイッチが起こり、処理順序が変わってしまう可能性があります。
対策としては、シングルスレッドで動かすことです。マルチスレッド特有のめんどくささからは開放されます。
シングルスレッドで動かすためには、WebSocketClientにFixedThreadPoolを指定します。ここでスレッド数は2つである点に注意してください。ワーカスレッドは1つでも内部動作用にもう1つ指定しないと動かないようです。
Executor executor = Executors.newFixedThreadPool(2);
WebSocketClient client = new WebSocketClient(executor);