To do this you'll need to create another field for Due Date Reminder. I believe you can make that a calculated field that is equal to Due Date - 7 days. You'll also need to create a workflow that kicks off the email to the desired recipients.
For your Task list, go to List Settings
Information management policy settings
Click on Task under Content Type
Select Enable Retention. Some new text will show up
Click on Add a retention stage..., which will open up a modal window
There should be a drop down for Time Period. Select your DueDateReminder field.
Under the When this stage is triggered, perform the following action: ** dropdown, select Start a workflow then select your email workflow
These reminder emails x days prior to due date sounds like such a simple thing, but often it is not.
The first issue is to get the actual requirements right, especially the edge cases:
I have a task that is due in 9 days, then I change the due date so that it is due in 4 days..does the workflow catch this?
I now change the same due date and now the same task is due is 10 days. Should the notification be sent again in 3 days time?
The only solution that I have made that actually covers all the cases is a daily timer job