I had a similar problem. I could pass data to my plugin using GET, but POST data never showed up. I finally realized that if my form pointed to a directory:
http://mysite.com
http://mysite.com/wordpress
then my POST data disappeared and $_POST was empty. If I pointed to a specific file:
http://mysite.com/wordpress/index.php
Then it worked properly.
I post that here only for reference for the next poor sap who tears their hair out over this.