I was about to get into reporting on this and got started on a new project.
I did find that some vendors are putting the install date in registry key along with their uninstall information. I assume you would need to create a custom inventory to scan this registry key, but I didn't get too far into it.