Aha! Enlightenment dawns ...
Put the following code in the onchange Client Script
dijit.byId('#{id:ReqGiftName}').attr('required', false)
where ReqGiftName is the field name contained within the Panel that is partially refreshed by the onchange Event.
Technically of course the dijit code is executed when you first check the Checkbox, but being as the field doesn't exist within the UI it fails (seemingly silently).
Thanks again Keith for the reference. Jerry.