You can edit the price on the package to make the change effective for everyone using the package. If you want to make the change affect only certain customers, I suggest creating a new restricted package with the new pricing. As long as it uses the same module, you'll be able to change the associated package for the customer to the new package by editing the service. If it's a restricted package though, you'll just need to make sure the customer has access to the package.
You can grant access under their client profile page, Actions > Set Packages. Then, edit the service to change the package.
This method won't add another line item on invoices to show the discount, but you could put that in the package name.
The other method is the use of recurring coupons which would apply a recurring discount to the service. I believe this discount would appear as it's own line item on invoices. The issue here is that coupons cannot currently be edited/added after a service has already been created. There's a task for this though, CORE-1066, and it will be in a future release.
The last method, which probably isn't ideal for this situation but is worth mentioning are price overrides, CORE-747. This one isn't available yet either but will be in a future release.