I want to add Custom property called "CssClass" in LinkItemCollection propery. How can i do that? Can anyone please suggest me clean way to achieve this ?
What are you trying to do?
Modifying the existing LinkItemCollection property is pretty hard so that should be your last option. There are probably easier ways to do it that is good enough.
If you want to use that CSS class for the whole list of links then the easiest way is to create a new string property on the same page type. If you then create a new display template for the link item collection you can use that other property to set the CSS class of the list. If you need the same on multiple pages it makes sense to combine the two properties into a local block so it's easier to reuse.
No, I need to add different class for each link. Is that possible ?
Maybe use rich text editor instead? It should be rare that editors need to set CSS classes manually on anything