Having the original due date & 1 item for due date - 1 day, that will trigger a rule for notification.
That’s better then a cron job, that will unnecessary run to often
Your option 2 is the easy way. It’s not a work around. That’s the intended approach.
I could see an offset being added to the Time is <Item> to supply an offset. I could see that being useful. If this existed then you could have the one Item and then set the rule trigger to something like Time is TrashTime P-1D to trigger the day before the date in TrashTime.
Note, I like ISO8601 duration Strings because I like to follow standards and this standard is well supported.