I need to implement one (or more if necessary) smart contract(s) that store the information of a pending transaction (sleeping transaction) between two EOAs and generate (wake up) the transaction when a particular action happens. Is this operation possible with solidity? I prefer not to demand the computation to an app (until it is possible)
The contract will not have access to the events that happen in the network. Therefore, the wake-up call needs to be sent by an EOA.
The answer is then that the smart contract can store information about the transaction that needs to be done, but an EOA will need to trigger the contract to start the actions.
You will need to build an external system that sends the wake-up call. If the trigger is time (for instance, you want the transaction to be executed at a particular time), you can use AION, Ethereum Clock Alarm or Oraclize services.
Hope this helps.