Here's an example: https://github.com/sumatrapdfreader/sumatrapdf is code written by 2 people (me and another guy).
It's written, documented, tested and bug fixed.
It's 110k lines of code. And it's tight. Good luck removing 10k lines of code and not loosing any functionality.
Assuming 10 lines per day and round-the-clock 365 days of working, that's 30 man-years of work. 15 years for 2 people.
I didn't spend 15 years writing it. It's a part-time effort over 10 years.
The 10 lines per day is off by at least an order of magnitued.
And I don't claim to be spectacularly productive. Jonathan Blow wrote 90k lines of code for Braid in 1 or 2 years.
SumatraPDF is fine to read EPUBs on Windows (also supports PDF, MOBI, FB2, CHM, XPS, DjVu) - it's free, open-source software [0][1].
The biggest problem working solo (open source or not) is motivation. Many people find it really hard to do the work without the external pressure of bosses and co-workers. Search HN for freelancing thread for some harsh truths.
It seems like you plan to contribute to someone else's projects, which is the worst of both worlds.
When I do open source (e.g. https://github.com/sumatrapdfreader/sumatrapdf), the biggest advantage is that it is my project, I'm the boss and I make all the rules. I get to decide what is done and how it'll be done.
Contributing when other people have a veto over what you do is like having a boss without the benefit of paycheck.
For example, recently I noticed a few improvements I could make to libuv. But then I saw how many PR are languishing for days if not weeks (https://github.com/libuv/libuv/pulls) and decided I'm not even going to bother. And this is a well known, active project that is better than most at accepting people's changes. I could give you examples of projects with many outstanding PRs without even a comment from the owner.
Certainly don't do it if you don't have a project of your own to work on.
Possibly don't do it even if you do have a project to work on. You can start by working on open source in your free time.
You also didn't mention anything about money - are you independently wealthy to even be able to afford writing code without someone paying you? Roughly speaking, there's no money in open source.
As to learning - how much you learn is more about how intentional you are about learning and how you go about it rather than whether you work or do open source. At the very least, you'll learn different things.