I agree with both eigenbom and bateleur.
I use these same techniques when doing any project; From back-end website code to game engines.
Our team is working on a series of smaller games as major milestones leading up to the larger actual game. The bigger game would just take too long with too much waiting with little reward in the interim; So, we came up with a few more simpler games and elaborated part of the story we otherwise wouldn't be able to tell. Hell, we even cut out a few of the dimensions of gameplay from the lesser games. If you don't want to butcher the pet project into some smaller subset, then create a different game that utilizes said subset of features.
Furthermore, you probably really do need to test gameplay mechanics if you care about fun. In order to find out what works from a gameplay perspective we build a prototype of JUST the gameplay, no art at all. Once we used basic particle effects and bounding boxes (not even any models), this was enough to quickly start testing core gameplay mechanics
Eg: We picked one enemy type, and one weapon to implement. Then, hacked together a crappy editor that's a VERY long way from what the finished product will be, but can just barely create content for the basic concepts.
Even though it's just some colored boxes and some particles we were able to decide that flying was much more conducive to the frenetic fun we wanted than platforming + limited "jetpack" boost. We didn't need the "Jump" mechanic, and that double jump to boost sucked, etc. The initial designs all sounded pretty good in the design doc and in our heads, but playtests don't lie -- It doesn't matter how cool you think something will be if it's not fun to play... unless you're doing an art game and being fun isn't important?
Test early, Test often. Make a bare bones prototype and save yourself oodles of time re-engineering stuff later. The pride and joy you'll get from actually playing with working concepts will be well worth it in terms of motivation. Who knows, you might discover something neat you hadn't thought of along the way.
Even little working tech demos can help you power through the next batch of mundane code.
For example: Some rotating text
got us through the boring cross platform windowing abstraction layer. Playing with the tweakable animated sky
got us through the input binding system. Play testing a few gameplay prototypes
staved off boredom through implementing the UI event delivery system & networking code. Adding little features to a cheesy Tetris clone
will keep us from being bored while we build out the 3D GUI widget library... etc.
TL;DR: Don't underestimate the motivation power in small bits of working code. Treat tech demos like the rewards they are, and get something playable as soon as possible.