Answers and some tricks:
The SMB ROM has no free space left, and I believe it's a very bad idea to sacrifice other space(e.g. music space) for the levels.
One of the most common ways to add levels is to change the mapper and expand the ROM. Expanded ROM would be rejected from the SMB Utility's ROM check. However, you can edit levels of a usual Mapper 0 ROM using SMB Utility, and then use SMB Map Importer to import the level data into the expanded ROM.
ROM expansion is about assembly and bankswitching. Mappers that have the simplest bankswitching methods are the VRCx mappers I believe. (Don't use MMC1.)
Although there are about 200 mappers, you don't need to memorize or even recognize all of them. Just select a mapper, find out how that mapper handles bankswitching, and then it's coding time.
Mappers which generate scanline IRQs are: MMC3+, VRC3+, N106 etc; Superior mappers are VRC6+, N163, SN5B(Enhanced music), MMC5(Notable for easier 'multiplication' and enhanced music)
Crap stuff below: Well, personal opinion is quality over quantity. It's not that a huge course is bad; Extra Mario Bros has many long levels. But EMB has not only long and well-designed levels but also amazing graphics and effects. There are a great number of SMB hacks today, and level hacks are no longer fascinating unless the levels are real cool and creative. What is more important is that what you find creative might already be old-fashioned.
Gain experience while hacking, and then you have good hacks.
Want to learn how to expand the ROM? Go ahead, learn assembly. We need people who can handle 2A03 ASM. Soon enough you will find that using assembly, there are a lot more things to do other than expanding levels. In my community there are people who continually think of ideas like 'what if I can make reverse pipes...' and they can't. And that's a pity.