Two Solutions !
One - Simple Flow (mostly)

This just finds the folder and makes the files. If there are any errors you rely on flow notifications to tell you.
Here it is spanned out:

Variable clientFolderVAR
This will hold the path to the client's folder.
Constants
emailSubjectCON is not strictly necessary, but it's just there because I wanted it. emailBody has the following expression, but obviously you should ensure your references are correct if you want to use this:
if(triggerOutputs()?['body/isHtml'], outputs('Html_to_text_on_the_email_Body')?['body'], triggerOutputs()?['body/body'])

Note:
- There is an HTML to Text on the email message/Body? This way it means that the column in the libraries will not be full of HTML if the trigger field 'isHtml' equals true.
- I should have named the emailBody constant 'emailBodyCON' for continuity.
Folder Management (folderChecker)
Inside the folderChecker scope I made Filter clientFolders which provides a list of folders that have the correct client number (clientNumCON). This results in this Filter action should 1 item if it exists, or 0 if it does not.
So, then there is Condition to see if the number of results in Filter clientFolders is equal to 1. To count the results in the filter the expression is:
length(body('Filter_clientFolders'))
Yes branch
If there is one result then the clientFolderVAR is set to the 'Full path' key from the first item [0] in the Filter clientFolders array with:
body('Filter_clientFolders')[0]?['Path']
No branch
If there's zero results (because there can't be more) this branch will run, and will make the folder, then provide the clientFolderVAR with the 'Full Path' field from the Create new folder in clients library action.
-----
-----
Two - Error Tracking
I have updated this one to show the simplicity of the file creation logic.
This Error Tracking flow will only fail if a file creation fails, and you will have details of where it failed, too. You can then add more steps into the flow and track more errors if need be.

More detail
I'm sure you can see that there is more going on here.
Variables & Constants
First of all, here are the variables, there's the new clientFolderVAR and currently pointless folderOkVAR, plus there are also now integer counts for errors when making the files with clientLibraryErrVAR, emailLibraryErrVAR, and renamed totalErrorsVAR.

The constants are unchanged from the simple flow.
Folder Management
This expands on the simple version, except that I have realised that the folderOkVAR is utterly pointless at the moment, so you don't need that.

File Creation
I have made this branched, with their own error counts to indicate more specific failures, I also added your fields (kind of 😉). Also, this now uses the new clientFolderVAR.

- Title is the outputs of emailSubjectCON.
- clientNum is the outputs of clientNumCON.
- emailBody is the outputs of emailBody.
Error Reporting
Finally, any error reporting is sent, or the flow finishes successfully.

Note - The only expression here is just adding the two variable counts together in the totalErrorsVAR.
expression
add(variables('emailLibraryErrVAR'), variables('clientLibraryErrVAR'))