It essentially relies on a Layer 2 server(s) which will pick up your pre-signed transactions. That is, for a full-year subscription with payments due every month, there will be 12 pre-approved transactions. There is no way to know beforehand if the user will have enough funds in the future, but this is resolved off-chain by disabling access to the said offered service.
Depending on the application incentives, you may need to pay extra gas, albeit in most cases the payee is a business and it will process the payments for you.
You could have a read on the ERC-948 thread and, importantly, meta transactions.
So the answer is that EIP-1337 doesn’t make sure the user has enough funds.