The steel-hulled M/V Milagrosa J3, with 331 passengers and a crew of 29, was en route to western Palawan when it suddenly stopped in calm waters late Tuesday.
Crewmembers later discovered that the ships propeller was missing and radioed for help, officials said.
Fishing boats towed the 273-ton ship to an island where Coast Guard rescue vessels took the 360 people to mainland Palawan, Coast Guard operations officer Herculano Alinton said.
The ship could have sunk had it stalled in rough seas, he said.
The Coast Guard is investigating the incident to determine if the ship owner could be charged for negligence, Alinton said.