Ok i tried your code and i think we're so much close, the only problem is that when im in front of the sprite this one inclines to me, and if i pass through him he gives a 360° turn in X axis, but dude thank you finally something works :D
About Y-Billboard i tried that too and actually it works perfectly, the problem? i dont know why but the sprite turns fat, literally, its X-Scale grows and i cant change it even if i use the Scale Mode or if i manually decrease its X-Scale in Inspector menu, but the Y rotation works perfectly, using Godot 3. Now, being a SpatialMaterial, i put the Transparent, Unshaded and Albedo Tex For flags in order to make it visible and in good quality, im not sure if one of those flags makes the Y-billboard not suitable (pretty much sure its not that) or maybe my sprite was made wrongly (could be), or maybe is my version of godot, are you using godot 2?