This is possibly a crazy idea; I won't let that stop me though.
At the moment, network difficulty is adjusted every two weeks. During that time, miners can enter or leave the game, making the hashing power of the network different from when it started. That means that unless the hashing power is static, it's almost impossible that blocks will ever be generated at the 1 per 10 minute target rate.
How about this as an alternative:
While miners are working, they publish their "best" block as they go. They monitor the network as well, and don't bother publishing a block that doesn't beat the current best. After ten minutes, the current best wins and all the miners start on the next block. The "best" block being the most difficult of course.
This would keep the block rate constant. Admittedly it would be a slightly increased bandwidth usage, but nothing too strenuous I think, as the publishing rate goes down exponentially as the "best" keeps being overridden.