TL;DR - No
Ultimately, I believe this is the only answer anyone could offer, given your constraints. But since "no" is such a poor answer, I will try and elaborate on my view.
What is vanilla?
The items in a vanilla instance have no common markers. It's not like e.g. in the Windows File System where files could be marked with the archive bit, which would then be cleared as soon as something was changed on the file.
In short, there is no way to see if a Sitecore item has changed, from the base vanilla install.
That's not entirely true however
You could record all the vanilla Item IDs and Revision numbers, of your Sitecore installation. But these are not available on public record (but I might be getting an idea as I write this) - so there would be no way for you to determine this on your 30+ instances. You would, as a minimum, need to install 1 of each version of Sitecore you have in use to produce the vanilla footprint - and then use some sort of tool to compare this footprint against your instances.
You could use Unicorn
To get around the limitation of needing a commercial tool. But you would still not be able to get around, the need to install vanilla instances as a comparison blueprint.
With Unicorn, how could it be done?
I can outline the idea.
- Install 1 of each version of Sitecore you have in use
- Install Unicorn on each
Serialize "master" and "web" fully
- Serialize "core" and "master" fully
You now have your blueprints.
Then proceed to:
- Install Unicorn on each of your 30+ instances
- Serialize as above
- Use a file diff tool to point out differences
But that is a pretty involved process as well.
The fine print
And none of the above actually deals with changed Sitecore file based assets. For this, you could definitely use a common file diff tool - like Beyond Compare or similar.
Edited to fix, which databases would be significant. "web" is largely irrelevant, as that would always be a product of publishing "master".