Is it require to to turn the whole project to c++ to make a c++ blueprint ?

It makes my project to be about 2-3 times bigger and it takes a lot of time to compile it .
Can i simple custom blueprint node can be create with a normal blueprint project ?

You could make a plugin with your new blueprint nodes.

You can find more info about making plugins on the wiki:
Ramas_Vertex_Snap_Editor_Plugin
An Introduction to UE4Plugins

Thanks i will check it out .