Coach Tai Beng Hai's men played well in patches, and took the lead twice only to give India back a life-line on both occassions, but Shahrun Nabil nailed a late winner in the 58th minute and now, Malaysia must beat South Korea today, and Canada on Saturday for an outside shot at playing in the final.
The game was delayed by an hour due to torrential rain, and after the negaraku, Malaysian goalkeeper S. Kumar @Spiderman was rewarded for his 250th international appearance.
Malaysia were ontop of India in the first quarter, but failed to break the deadlock.
Faizal Saari, who skipped two months of training, missed a sitter in the opening minutes of the match, but made up with a penalty corner goal.
Baljit Singh dribbled three India players and made a reverse stick pass to Faizal who made a darting run into the semi-circle but failed to shoot straight. For the record, Faizal scored 12 goals in the World League Round Two in Singapore but scored his first in three matches yesterday.
It was a 17th minute penalty corner, Malaysia's first, and Faizal's drag flick almost tore the netting.
But three minutes later, India won their first penalty corner and a low push by Rupinder Singh beat the postman for the equaliser, and the score remained until the half-time break.
After the re-start, Malaysia claimed the lead again when a move from Firhan Ashari found unmarked Haziq Samsul who tucked in from close range in the 35th minute for 2-1.
Malaysia made too many mistakes in the fourth quarter and gave away easy penalty cornees and in the 50th minute, India won their fifth and Rupinder equalised with a powerful drive.
Shahrun Nabil had the last say in the 58th minute, when he scored a classic goal to give Malaysia a well deserved win.
Malaysia play South Korea today, but Korean coach Shin Seok Kyo failed to show up for the press conference .. for the second time in a row.
Shin was warned by the tournament director for missing the press conference after the Canada match on Monday, but he still refused to show up for interview yesterday.
New Zealand and Australia have maximum points after three matches, and barring upsets in the remaining two matches, the Oceania neighbours will play in the final on Sunday.
Yesterday, the Kiwis trashed Canada 5-0, while Australia easily beat South Korea 5-2 with a hat-trick from Jamie Dwyer, who helped the Aussies win their second consecutive World Cup title last year.
Today, Australia and New Zealand clash and a draw will see them play in the final. Australia have India as their final opponents, while New Zealand face South Korea on Saturday.
P W D L F A Pts
AUSTRALIA 3 3 0 0 15 4 9
N ZEALAND 3 3 0 0 11 3 9
S KOREA 3 1 1 1 7 8 4
MALAYSIA 3 1 0 2 7 9 3
INDIA 3 0 1 2 5 7 1
CANADA 3 0 0 3 1 15 0
RESULTS: Canada 0 New Zealand 5, South Korea 2 Australia 5, Malaysia 3 India 2.
April 9: India v Canada (4pm), New Zealand v Australia (6pm), Malaysia v South Korea (8pm).
April 10: REST DAY.
April 11: Australia v India (4pm), South Korea v New Zealand (6pm), Malaysia v Canada (8pm).