SigningTime element shows the time in UTC, but the recipientwants it to be in local timezone. How do I change the behavior?

For example, SigningTime contains "2016-08-30T14:02:40.000Z", and you need a format like "2016-08-30T14:02:400-05:00".

To do this you need to set the signing time as shown below. Note, that the instance of TElXMLQualifyingProperties class can be accessed using TElXAdESSigner.QualifyingProperties property only after it was generated (after the call of TElXAdESSigner.Generate() method).