Is there any way to animate specific vertices instead of the whole object?
To do this you need to create shapekeys and then keyframe their influence/strength. 

Shapekeys are essentially alternative shapes for you mesh that allow you to interpolate between them and the base shape of the mesh. 

see the blender manual for more details