Is your question, should the class be static, maybe static, or maybe internal, or should be internal?
Hadoop itself should be able to create your reflections Mapperor Reducer, given the link to the class / name configured in yours Job. This will not work if it is a non-static inner class, since an instance can only be created in the context of some of your other classes, which apparently Hadoop knows nothing about. (If the inner class does not extend its encompassing class, I suppose.)
So, to answer the first question: it should not be unsteady, since this almost certainly makes it unsuitable. To answer the second and third: and this may be a static (inner) class.
a Mapper Reducer . , "Runner". , , . , . : , , .
: , Mapper Reducer JAR. Hadoop, JAR , , . Job. -, Mapper Reducer JAR.