It was a well-crafted win with the winning goal coming late in the match.
India has nine points and another win will ensure their place in the final on Saturday.
They have Australia and Britain next while Japan despite the defeat is still in the mix for a final berth.
Indian coach Jude Felix was pleased with the win and felt there has been an improvement in their game.
“We stuck to the game plan, but I am still not happy with the finishing.
There were far too many missed chances and we must improve on that. Of course, going through three matches unbeaten is a great feeling but form the game point we cannot be happy with the way we played.
“There are still two more tough matches to come and we need to be ready for it.
Each match is a learning experience for the players,” he said.
Both teams went into the match unbeaten. The Japanese had taken full points off defending champions Australia and Britain with similar 2-1 wins.
India defeated Malaysia 2-1 in their opening match and then whipped New Zealand 7-1.
The first quarter was quite evenly matched although India had better chances at scoring. But the disciplined defending by the Japanese saw the quarter end goalless.
It was the same story in the next two quarters with missed chances and close defending. But a fourth penalty corner for India in the 42nd minute. Indian skipper Mandeep Mor sent his direct flick to the keeper’s right and put his team ahead.
The Japanese went all out in the last quarter to get the equaliser and came close several times.
They earned their first penalty corner in the 57th minute. But it failed to provide the goal for them.
In the end, the Indians held on to take full points and remain the only unbeaten side in the tournament.
Japan coach Hiroki Sakamoto said that they failed to take their chances in the match and match the Indian speed.
“We were just a little unlucky today as we had several chances to get then goals. It was a good match for us but there are still two matches m to go and we will keep trying,” he said.