Although no injuries were confirmed, the double attack caused a leak in the engine room of the ship, named Tutor, and the crew is currently assessing the damage, the source added.
The British navy said the attack took place 66 nautical miles south-west of the rebel-held port of Al Hudeid.
The ship was hit in the stern by a small boat and was also attacked from the air, probably by a drone, the Greek Coast Guard said.
Meanwhile the daily Kathimerini did not rule out that the cargo ship would need to be tugged to a safe harbour.
mh/abo/mem/ehl