There's an easy way of adding memory like you describe. Tell GPT-4 that it has memory and that it can remember by using the REMEMBER command. You then hook up this command to e.g. a vector database and GPT-4 will do proper queries on prompts like “Remember what I told you about the trip I’m planning? I want to revise it so that we leave in June instead of March. Can you suggest changes?”. I've tested this and it work pretty well.
In my experience, this is much worse in Claude than in GPT overall and is the main reason I recently downgraded my Claude Max subscription to Pro. I've had both Claude Max and ChatGPT Pro for a long time and used both extensively. In the GPT models it seems to vary between releases. 5.2 was an improvement, 5.3 much worse, 5.4 a bit better (but perhaps not as good as 5.2), 5.5 worse, but not as bad as 5.3. The "Codex" models (5.1-codex, 5.2-codex, 5.3-codex) were all pretty bad and did this a lot, much more than the non-codex variants of the same models.