You can say that ferry is pronounced like very , merry and berry with a short (e) while fairy is pronounced like fair , air , pair after adding the (y) so you can notice that it is pronounced a long a:
This what I know and learned.
Linguists sometimes have a strange way of categorising different dialects and accents. Two such categories are called MIMIM and MINMINM. They stand for, respectively, "Mary is merry is marry" and "Mary is not merry is not marry" -- and I didn't just make those up, those are the real terms.
Most North American speakers are MIMIM, which means that they pronounce all three words almost exactly the same way. Most British speakers are MINMINM, meaning that they pronounce the words differently.
So, in answer to you question: it depends what dialect you're speaking. But even MIMIM speakers would tend to pronounce "ferry" with a slightly shorter first syllable, so there is usually a small difference. A non-native speaker might not hear the difference, though.