This would NOT catch updates to a non-indexed table and it only has info since the last SQL restart, but if THOSE conditions were not game-stoppers, would this be a viable solution to see data changes?
MAX(CASE WHEN last_user_update < last_system_update THEN last_system_update ELSE last_user_update END) as LastUpdated
group by database_id,object_id
order by db_name(database_id),object_name(object_id,database_id)
Cursors are useful if you don't know SQL