Well my son is now 10 and I also have had this problem since after having him. It is basically just because your belly button has changed a little after having the baby, it has gotten deeper. Sweat and stuff stays in there and causes the odor to accumulate and make it sore. Everytime you get a shower, make sure you scrub it well, even if it is sore.
For the soreness, try a topical cream like neosporin with the stuff in it that helps topical pain. Other times I have used powder like shower to shower, it tends to absorb the body fluids that cause the odor and it also keeps it soft and non-irritated.