It is not too difficult to design a real Good Charger to charge 3S LION or similar batteries using a 5V USB supply. There are two things you will have to keep in mind:
(1) Each cell has to be monitored “individually” so as NOT to exceed 4.2V
(2) When condition in (1) is satisfied than only you apply a charge pulse.
You will need a minimum of at least 6 tiny (3x N channel && 3x P channel) MOSFETS (or 3x NPN && 3x PNP transistors for switching in each cell at a time. You will also need a micro-controller with at least 4 Analog inputs and 6 digital outputs for Mosfets switches and 2 digital outputs for LED indicators. ( more I/O pins for anything especial you wish to accommodate.) Atmega328p (Arduino Nano) is very much suitable for this project since it has 8 analog inputs and over 13 digital I/Os.
About 15 tiny resistors will also be needed.
Programming with Arduino IDE is very simple since it uses the best language ..C, C++.
NOTE: this charger would be much better than anything you can buy in the market since here you will be doing all that is required by LIONs charging and checking the individual cells properly in sequence. Commercial chargers don’t normally do these activities since they use cheap devices with fewer I/Os
Also don’t worry about all the misinformation you find flowing on the web about ‘constant current’ etc, we have experimented extensively with LION type of batteries at our university and found that they charge very well with varying currents.
You don't need any voltage booster circuit since you will be working with individual cells separately and 5V USB supply is enough to charge a 4.2V cell. The micro-controller will take care not to switch any other than the required Mosfets. Programming these types of projects is a real fun.....
Good Luck with your project.