"are set to correct values after the package has started executing"
This is not correct. Package configurations are set before validation. Then validation is run, then pre-execute, then execute. You should not have to use DelayValidation to handle package configurations. You should only have to use DelayValidation is you are using expressions, variables, or script tasks to set connection information, or if you are doing something like copying an excel spreadsheet to the location that your excel connection manager is pointing to.
What sp of SSIS are you using?
You can further delay validation using sequence containers, so if you are finding that something is being changed further into your package than setting DelayValidation on the package can handle, throw everything that needs to be delayed into a sequence container and set the DelayValidation on the sequence container to True. This will delay the validation of the conponents within until the execution of the package reaches the sequence container and will actually not validate the components if the package execution never reaches the sequence container (if you had some conditional logic).