Extra handling fee for certain payment method

Is there any way to configure a handling fee for a payment method? We use two payment methods: paypal and cash on delivery. If customer selects paypal there's no problem, but if he selects "cash on delivery" we want to charge extra fee for handling.

That's because it's a fixed fee that our carrier charges for every order. Up until now we just displayed the warning to the users that they will be charged this fee if they choose "cash on delivery" method but many users miss this warning and then they complain that they had to pay more. Some of them even reject the order (for small orders where the product price is almost the same as carrier provision).

I know how to set a carrier handling fee but the problem is that we use only one carrier which has a different price if order is pre-paid (using paypal) or post-payed (cash on delivery).