This shows me 404 page how I want but without the rest of the root element but also the http status is reported as 200. How do I properly throw it as a 404 and show it inside root element?
React-router is client-side routing. You're not making an HTTP request, so there's no status code to set. If you're doing server-side rendering that's a different story but as it stands you can't accomplish what you're wanting and frankly I'm not sure why you would want to.