This issue is because, the new values for 'mail.from.address' and 'mail.from.name' are not updating properly. print_r(config('mail')) displays updated value in controller, but it is not taking the updated values while sending email. May be need to pass these two parameters in a different way
We manged it with following code
Code in Library file
config(['mail.host' => trim($data_list[0]->mailServerHostName),
'mail.port' => trim($data_list[0]->mailServerPortNumber),
'mail.username' => trim($data_list[0]->mailServerUsername),
'mail.password' => trim($data_list[0]->mailServerPassword) ]);
</code>
FromEmail and FromName are moved to controller file
Mail::send('emails.welcome', $data, function($message)
{
$message->from($data['fromEmail '], $data['fromName']);
$message->to( $data['toEmail'] )->subject($data['subject']);
});