I'm trying to piece together what you are asking, but it seems to me that you want two web servers (not just virtual hosts), serving different content, both pointed to by names under the same second-level domain name (such as example.com).
- www.example.com points to one server that runs your main ecommerce site, with the web shop and all that, but nothing else
- blog.example.com points to another server that runs your blog and nothing else
You can do that. In fact, it isn't even an uncommon setup. If you broaden your horizons to Internet-wide web hosting, it is exactly what's being done all the time. Granted, most often people consolidate their own content on a single server to save on hosting costs and make things easier to manage, but there's no reason why you have to.
The security properties of such a setup, assuming that the servers do not know about each other (though you can link and reference material back and forth between them using plain web links), for each site, will be essentially identical to if you'd had only that one site and the other server didn't exist at all. In other words, someone who finds a vulnerability in your Wordpress setup will, in an ideal world, not be able to leverage that to gain access to your ecommerce site, or the other way around, any more than, say, a security problem on blogger.com allows exploiting a page on wordpress.com.