1.a) I have been living here for 3 months.
1.b) I have lived here for 3 months.
I think these two sentences pretty much have the same meaning. They both tell the reader that the writer started living "here" three months ago and still does.
2.a) I have been building the house for 3 months.
2.b) I have built the house for 3 months.
2a sounds ok. It tells the reader that the writer has spent the last three months working on building the house. It probably isn't complete - if it were, the writer would probably use the simple past tense ("I built the house in [or over] 3 months") or the past progressive ("I spent 3 months building the house").
2b sounds unnatural. built (past participle or past tense) is usually reserved for completed acts of building. "I have built houses for 3 months" (with houses, plural) seems more natural to me - you might say this if you have worked as a carpenter and have finished building many houses over a period of 3 months. But if you want to describe the act of building a single house, "have built...for" does not sound right. It sounds like you have completed building a house repeatedly over the course of three months, which makes no sense.