remember that any solution you'll choose - this is a security breach!!!!
about your options:
1. you can't do it (you can - but it's not worth it. you need to open pipe, and send the commands threw this pipe and so on...)
2. this is good one, you probably need to write your own wrapper (this is the solution that my company use).
3. that solution is new to me and i gonna check it right now.
4. that option is ok, if your scripts do not need privilege user or specials permissions.
another solution, is to write your own daemon (you can write a cli-php daemon) and use this daemon as a server to run applications. build it as a simple server that listen to some rare port, and accept in the requests a path to the script you want to run, list of parameters and password (for security).