Keeping the game interesting for me has always meant upping my building game. I'm always trying to out-do yesterday's best. I build a lot of medieval Norse fantasy cottages. I've gone from little boxes to sprawling northern farmsteads with ornate, sagging roofs and stables that actually look lived in.
I think one of the key points to make about this is to consider a philosophical change in how you approach the game. Most people seem to aim for automation and highly localized bases where you can practically run the entire operation from a single room. These are impressive builds, no doubt about it. But, they also are usually game breaking. I've seen tons of people who finish them, thinking they now have everything they need to make an awesome build...and then go "oh no, what do I do now?" because they've already gotten everything the game has to offer at their finger tips. There's no more strife, no more work involved. No effort required means no reward provided!
I too used to make bases like this and experience this phenomenon. What I do now is instead of making one house that serves as my base, I build villages. One area has the farm with the livestock and produce. Another house I may build simply because I wish to grow pumpkins and it would look quaint if I had a small pumpkin garden abutting the structure. I build wizard towers specifically to house my enchantment room. There's always a central food bank where I keep excess for a rainy day. I try to see how much I can store up, gamifying the act of saving away produce. Each in-game function has its own build associated with it, instead of glomming it all in one building, and I put a focus on making those builds look natural. This all comes at the expense of expedience, of course. But it puts the heart back in the game as I have to wander around my village to tend to the various tasks necessary to have a good minecraft life for my Steve.