One can read "a framework" as "a set of libraries". As you can see, there are libraries for many kinds of things a developer may stumble upon in web development (for example: cookies, JSON API, templating, web server). CGI module can handle GET/POST parameters, file uploads, HTTP headers, cookies, and build HTML for itself, too, and also allows you to build complex programs, being a part of a bigger system (HTTP Server + CGI script + Templating engine + Data Storage), while Mojo already incorporates "everything" (including signed cookies for session storage, templating engine, a web server...), which makes building both simple and complex applications easier.
Right now I'm writing a CMS for the site of a local progressive rock fan club (it's a strange thing that there are no good CMS's written in such a good web framework, or did I miss something?). A lot of things are already done for me by Mojo, signed cookies help a lot, the most hard part was the database (which I have to implement myself since Mojo is database agnostic). My suggestion is to start writing your web UI in Mojolicious::Lite and see how it goes.