Not neccesarilynecessarily. Consider these two functors Set
→ Set
: F is the constant functor with value the empty set, and G is the identity functor. Then F is a subfunctor of G, G is obviously left exact, but F is not: it does not send the terminal object to the terminal object.