Hi Saima,
You have accomplished a lot for being new to workflows!! Good job!
This is true that they will remain in the waiting stage until the day arrives when the workflow should take action. There is no other way to have the workflow "wake up" and trigger UNLESS your business users are doing something else on the record that would trigger it.
If the contract dates can change, then you might be at risk of having multiple waiting workflows for the same contract, in which case this article may help.
www.powerobjects.com/.../multiple-waiting-workflows-wait-conditions-and-timeouts