* Malleability could be fixed by just skipping the signatures (the same data that SegWit would segregate) when computing the txid.
That _is_ segregation of the signatures up to completely non-normative ordering of data transferred. Segwit could just as well order the data into the same place in the serialized transactions when sending them, but its cleaner to not do so.
On the contrary, rearranging the data in transactions and blocks is an unnecessary and ugly hack to get that effect. It means hundreds of lines of new code scattered all over the place, in the Core source and wallets, rather than a few lines in one library routine that everybody else can copy.
I think I can see what you are arguing against, but not what for.
Are you suggesting fixing malleability by storing transactions as they are now and omitting signatures from the txid calculation? In effect, a hard fork.