[websocket]: Fix ClientWebSocket.ReceiveAsync() with small buffer; bug #22704.

When calling ClientWebSocket.ReceiveAsync() with a buffer that's smaller than
the received chunk, we need to cache the header until next call.