Hey there - I'm in a similar position, and I'm going the game-engine building route for the following reasons:
a) Building up a knowledge of how game engines are structured is important to me. Building even a simple pac-man game engine myself would, for me, be enjoyable! Sure, it will be frustrating - having to write boiler plate code myself, but that's part of the experience for me. It's a richer learning experience in my view.
b) Using ready-made game engines, whilst yeilding much more immediate results, teaches you less about the princples - I think.
So basically as you've probably concluded, knocking out as many games as possible is not my objective. It all depends what you enjoy. It doesn't bother me that everything I'll do has been done before many times - that's not the point. The experience is of more importance than the tangible results for me.
In the future maybe I'll use ready-made game engines - who knows. Not yet though.
You confuse from-scratch coding with engines. Pac Man requires nothing like an engine. Even a fist person shooter doesn't require an engine. Engine is something for making more games than one. It's not only some reusable code, it's the whole toolchain required to make more games (okay, definitions may vary), and usually implemented in a way, that it's commercially releasable or at least usable by more developers (or a development team, ie "in house" engine) in a structured environment.
You are talking about from-scratch coding, with is fine, I did/do that too, but that's light-years form engine programming.
And another thing, using engines does teach you principles. If you haven't ever used an engine and finished/polished a game (or several), I'm sure you won't be able to make anything that resembles an engine (even if you make games from scratch)