How can I hide one commerce specific shipping option without deleting?
You could try to remove the value from the form by using unset($form['commerce_shipping']['shipping_service']['#options']['express_shipping']);.

Also note that most of commerce's actions are handled by rules, there might be something there as well.