AFAIK there is no program that can do it automatically, but you could write a script for all of that.
Your commands are all stored in a file in your user profile folder. The file is
C:\ProgramData\Nuance\NaturallySpeaking12\Users\<Your profile's name>\current\MyCmds.dat. Write a script that copies that file to a different folder. Have the script add a time stamp. Run the script with Task Scheduler.
Your user defined words are not stored as conveniently. They can be manually exported with a Dragon macro (since you have Pro), though. A file with your user defined words would be stored in that folder. Add a time stamp to the file in the macro.
Write another script that cleans up these two folders (or run Belvedere). Run through Task Scheduler.
There is a Dragon add-on that will display all new words and commands at the end of the session: dns.comfort, available from http://sonic-labs.net/en/products.html. (Disclosure: I am a reseller of this product, though I get no benefit for this recommendation.) This allows you to keep track of the words added.