1. Why is that?
2. Is there any brief explanation on how the bug could have been resolved if actually it was possible?.
There are already great answers on the internet so I'll just point you to them:2. Is there any brief explanation on how the bug could have been resolved if actually it was possible?.
- 1. Here's a nicely written reply by 'Nick ODell' that briefly explains (compared to the length of the OP) how and why.
Link: https://bitcoin.stackexchange.com/a/40673 - 2. Here's a not-so-old Bitcointalk thread that asked the same question with replies explaining how troublesome to implement a fix since it requires a hard fork.
Link: https://bitcointalk.org/index.php?topic=5271566.0
Additionally, for number 2, TapRoot essentially "solved" it (if used for multi signature scripts) since it use OP_CHECKSIGADD which doesn't have that bug.
Ref: https://github.com/bitcoin/bips/blob/master/bip-0342.mediawiki#design