Your requirement for instant synchronization cannot work with JanusGraph caches enabled, because JanusGraph will get data from the cache if available, instead of getting the latest data from the backend. So,
cache.db-cache = false
be sure to start a new transaction before querying for the latest data (e.g. by executing a g.tx().commit())