tl;dr
I would suggest using the Toolbox of the Copernicus CDS. Via the Toolbox, you can choose datasets, process them and download the processed results. You have to be registered and logged-in to use the Toolbox.
How to find out how to select the dataset of interest
Use the search of the CDS and go to the bottom of the page. There, you can click/tab Show Toolbox request.

The page is extended and you get some code.

Access the Copernicus CDS Toolbox
Now go to the top of the page and click/tab Toolbox or go to this URL: https://cds.climate.copernicus.eu/toolbox-editor

You have to be registered to the Copernicus CDS service and be logged-in to be able to use the Toolbox. On the left, you have some example scripts. You can select datasets, process them, create figures, download data and much more. Amongst others, cdo (Climate Data Operators) can be used to process the data. The programming has to be done in Python.
You can select a dataset, calculate daily means and download the processed data via the Toolbox. Combining the cdo example (slightly modified) with the code from the search (described above) should yield some useful code for you.
Example code for the Copernicus CDS Toolbox
Here is an example request, which obtains a part of the data you want. It obtains only data for the year 2007 and for three pressure levels.
import cdstoolbox as ct
@ct.application(title='Retrieve Data')
@ct.output.download()
def retrieve_sample_data():
data = ct.catalogue.retrieve(
'reanalysis-era5-pressure-levels',
{
'product_type': 'reanalysis',
'pressure_level': [
'1', '2', '3',
],
'year': '2007',
'month': [
'01', '02', '03',
'04', '05', '06',
'07', '08', '09',
'10', '11', '12',
],
'day': [
'01', '02', '03',
'04', '05', '06',
'07', '08', '09',
'10', '11', '12',
'13', '14', '15',
'16', '17', '18',
'19', '20', '21',
'22', '23', '24',
'25', '26', '27',
'28', '29', '30',
'31',
],
'time': [
'00:00', '01:00', '02:00',
'03:00', '04:00', '05:00',
'06:00', '07:00', '08:00',
'09:00', '10:00', '11:00',
'12:00', '13:00', '14:00',
'15:00', '16:00', '17:00',
'18:00', '19:00', '20:00',
'21:00', '22:00', '23:00',
],
}
)
data_daily = ct.climate.daily_mean(data)
return data_daily