How I work it (based on a combination of tradition and ignorance...):
I've got my standard Dimension style set up to give "paper size" arrows, etc. I draw my model space widget. I create a viewport in paper space, zoom around till it looks about right, then actually measure it in paper space to see what the scale is- then reset the scale of that viewport to exactly some even number- say, 1/32 or something like that (I draw big things on small paper, FYI). Then I go back to model space. I define a new Dimension style, identical to the original, with the "Fit" factor set for that scale...in this case, it would be 32. Then I dimension, and draw any lettering in at that same scale. So all my dimensions are 32 times as big as on paper in model space, but are correct size in paper space. If I have a half-dozen viewports of different scales, I'll have that many dimension styles defined, usually called STD, STD32, STD24, etc.
"I always put text and dimensions in paper space. One reason is that an XRef then only grabs the model." I very seldom use xrefs in that way, so that isn't an issue for me.
I've been aware that I could dimension in paper space, but it just never did seem like that good of an idea. I think it's only in the last three or four years that they made paper space dimensions associative, so if you moved your viewport around, it wouldn't mess up the dimensions. If I understand right, you still have to manually set a Scale factor for the dimension style for each viewport? Or does it automatically pick up dimensions from model space now?