If I understand your issue correctly, signing both the approve and swap transactions simultaneously using the web3 library appears to be impossible. Nevertheless, there are two alternative approaches you can explore:
#1: Smart Contract with Swap Functionality Create
Create a smart contract featuring a function designed for swapping. This function should inherently include both the approve and swap functionalities within it (ERC821 may help).
#2: Single Approval with a Substantial Token Amount Basically
Basically, you just need to approve only one time with a significantly large token allowance. Once this approval is done, other approvals become unnecessary as the existing allowance is already ample for subsequent swap transactions.