Well as I envision it, a function within a function is not the same. Unless you pass the parameter back to the other function both functions would treat data as local scope when using the setoption('Explicit','ON') all script code must now dim vars which also then prevents a UDF from seeing that data, thus you would also have to dim all vars in each Function which would then make each local in scope.
As I view it a SUB-FUNCTION would be able to use and easily use or pass back var/data from the main Function.
As for the OptionExplicit I don't see that it would be harder, I see it as an OPTION if you don't want to use it don't use it.
But it would simply force you to maintain consistency in your typing. Different spellings would be different vars but Different Upper/Lower-case spelling would be weeded out.