I'm not an expert on populating fields, but to the point of different layouts, I think you can create any number of master pages with different dimensions and layouts with your text fields set up to populate from a database (however that works), and then simply drag and drop the master page ontop of the page you want the master applied to. Alternatively, you can choose "apply master to pages..." from the Links window fly-out menu. I would guess that copying and pasting a text box with "line 1" variable would retain the variable throughout.
So to recap, I need to: Change Applied master page based on database/csv column data Change Font type / paragraph style based on database/csv column data
That sort of fuctionality is outside of the capabilities of the built-in Data Merge function. If you do this often, a utiltiy like Easy Catalog can do that. If Data Merge is all you have, you will need to make a separate docuemnt for each layout, and run a merge of the rows you want to use in each.