So, here is my solution in case anyone else is interested on a quick hack. I just modified by hand the payment modules I needed like the following example.

On any given payment module, on function update_status() replace at the beginning of the function "global $order;" with "global $order, $shipping;", and add just before the end of the function:

Code:
//MINDTWIST disable payment module on a given shipping selection
//print_r($shipping);
        if ($shipping[id] == 'spu_spu') {
          $this->enabled = false;
        }
I can not really tell you were the shipping names come from, spu.php became spu_spu, table.php became table_1.php ... so if you want to know exactly what you need to use instead of 'spu_spu' on the example, just uncomment the previous line, make a test purchase, and pick the shipping method you want.