Drupal Views to Display Fields for Each Nodes of One Content Type
There are a couple of ways to this using Views. Chances are that you will have to visit the display settings of the content type to hide its content so that it does not show duplicated.

Solution 1. Create a block for each section of the page you want to relocate using Views using the argument or contextual filter so that the block use the node ID to show the right content in the right page. Then enable the blocks and make them visible by content type and you can play with the position of the block using CSS and/or the module block class.

Solution 2. Use the module EVA that it will let you create an view attachment to the node content type entity and that you can re-arrange like any other field in the content type display settings screen. The rest of the setup is similar to the way you created the blocks in solution 1.

Solution 3. You don't need to use views at all, just CSS and you are good. Reposition the fields using the content type display manager make the tags field first, then the body and last the category. Since each field will have a wrap div then use a simple "float", "with" and "margin" css to accomodate the content.

CSS Example (classes are not real)

.div-wrap-for-tags {float:left;margin-right:20px;width:200px;}
.div-wrap-for-body {float:left;width:400px;}
.div-wrap-for-category {clear:both;}