There are many fundamental parts of any RPG, in Blockland or not. First, you have to make the user "work" for certain things. I believe this is where quests, resource grinding, etc. comes from. However, this system of "work" isn't exactly perfect. The problem here is just as you stated: Players have to harvest resources for hours to get enough to make some item, or they need to repeat the hell out of a quest to get enough money to buy an item. This system makes for short-lived entertainment, and not only becomes increasingly boring but usually isn't worth it in the end. Every RPG I play I have the same feeling of purpose: to hoard as much loot as possible and to collect the best weapons and armor, etc. Once that best weapon is obtained, then you have nothing to do, since main questlines aren't exactly exciting or purposeful.
Now, from a realistic perspective, that's life. You work some job to get x money to buy a car or something. But driving a car is necessary, and experiencing the ownership of a Porsche or seeing the grand canyon is something enjoyable.
That said, RPGs that try to base their systems off of realism are doomed to fail. That's not excluding realism in certain aspects of the game, however, since fishing should require you to cast the rod, set the hook on a bite and successfully haul in a fish. This is based entirely on skill and not random smacking water with a pole item, which brings me to my next point: skills should not be increasing values. If a player is good at the fishing minigame (high success rate), they have a high skill. If they suck at it (low success rate), they have a low skill. Skills are merely numbers for evaluating how well a player is doing, and wouldn't determine anything else. Fishermen in real life don't randomly get skill, they learn it. From the game's perspective, the player learns good timing for setting the hook, and what not to do when trying to land the fish. This makes it fun for players to go fishing, and even allows for them to fish in a recreational form without it being 5 guys on a boat smacking the water while talking about something stupid.
Things like hunting already requires skill in the sense that you need to know how to aim. Crimes such as pickpocketing should be set up so the player has to slowly and smoothly pickpocket the person, or quickly grab their wallet and run off.
While minigames and challenging yet fun ways to harvest resources may be more fun that what we have, it's still important that the main mechanics of the game work on that same attitude. Money should not be handed out every 5 minutes (I'll use this number for example's sake), players should have to actually do their job. They could be payed hourly while they do it, with each 5 minutes being the equivalent to an hour while they work, or they're payed on commission if their job requires. There could be contractor and architect jobs, instead of everyone building their own stuff, but if you wanted to you could make your own house, since that's not extremely uncommon (example: my neighbor).
Bushido's idea for natural disasters, etc, is also an excellent suggestion in that it creates a more dynamic gameplay. Nobody likes a city that stays the same forever.
But we have to remember that this is Blockland, and we're somewhat limited. The easiest way to go about many aspects of an RPG is to leave it mostly up to the players. Most RPs that try this don't end up as planned, so there would have to be some type of guidance.
I didn't really touch on a way to make the RP fun as a whole, but it requires a relative lack of realism. Walking through a forest in Blockland isn't as fun as actually hiking, so some other form of recreation specific to Blockland needs to be substituted.