JavaScript (ES6), 2526 bytes
-1 thanks to @thejonymyster
-7 thanks to @Arnauld
-4 thanks to @l4m2
x=>x.replace(/pl|1-2|1/,z=>+z?'pl':1z=>~z)
Swaps the first instance of -12
and 1
, saving 1 byte when the program compresses itself. Takes the list of bytes as input, as a string.
This is quite the community effort now :p