I haven't tried this myself yet, but there is a method defined by Tk::Widget ("base class of all widgets") called "children", which "returns a list containing all the children" of the widget that invokes the method. Assuming that in your snippet from "cusotmersBillAddr_ui()", the $root widget is the handle ($billTab) being passed in from the caller, then the immediate children of $billTab would include a handle for $mnuTerms (though the information available via the widget handle would not include that variable name).
If you study the Tk::Widget man page, you should be able to work out a way to retrieve and correctly identify all the child widgets you want whose original variable names happen to be out of scope, so long as some level of parent widget is within scope.