What is the difference between lfc=log2(1.5) and lcf=1.5 ?
If you are asking about which one to use in topTable, the correct is topTable( ..., lfc = 1.5 ), as the fold-changes reported (and used for thresholding) are already log2(FC). However, topTable should not be used, and topTreat is to be preferred - read the topTreat manual page with ?topTreat.
As for "correct" threshold, my view is that there isn't one. It is of course necessary to control for false-positive discovery, hence the q-value of 0.05 (or lower). But for fold-changes, I guess it depends on if one is interested in all changes, or only big changes in expression.
One of the benefits of using log2(FC) is that the values are intuitive: a log2(FC) of one means one treatment has double the expression of the other; a log2(FC) of 2 means one treatment is 4 times more expressed than the other, and so on. However, using log2(FC) = 1.5 means one treatment is approximately 2.828428 times more expressed than the other - as for arbitrary thresholds go, you can't go much more arbitrary than this.