This was just one of the many troublesome things that had to be worked through. Until C89, the only ``official'' C was what Dennis shipped at any given time, and that was a bit ephemeral — particularly as the PCs and microprocessors C compiler implemented started to play fast and lose with the C syntax.
The core task of the C89 was to do as little harm as possible. My memory is that Dennis was pretty cool and rarely played his trump card (far pointers is one case I am aware that he told the 8086 people to pound sand) , but the compromise that the committee tended to use to kick the can down the road and get the standard out the door was to make things UB with the hopes that later versions could find a way to tighten things up.
Truth is, other language specs had used that (like Fortran) , so it was not a bad idea.
So, back to your question, I can not say what the actual cause if why there was a conflict WRT to signed integer overflow, but I bet it was that, since so many compilers handled it in different ways, the committee did not have a way to make a formal standard that would work, and they never found one later.
FWIW: Remember, C89 tossed a lot of systems like the PDP-11 away with floating point. It says, we are going to use IEEE 754. So just because an old system used a format, did not guarantee it would be accepted.