No need only to eat from supermarkets (although it's a great idea of some meals, even once a day), Roma and Firenze have lots of cheap eats. If your lodging provides breakfast at no additional cost, great. Otherwise, stop at a standup counter and have a coffee and pastry for about 2-3 euro. I would suggest you look for places where college students and workers eat, and order one or two courses instead of a full meal. Salumerie and even many supermarkets will make fresh sandwiches for you for a few euro.
In Roma, on Viale Aventino there are rows of "buffet" restaurants where you can choose items at a set menu price (usually around 7 euro). It's buffet food, so not gourmet, but it's nice to have a hot meal on a January day. Many pizzeria serve pizza only at dinner, so a sit-down evening meal can be 10 euro if you stick to one glass of wine or one beer.
For a sweet tooth, don't order dessert at restaurants, but go to a bakery. Twenty euro per day should do it, buy fresh fruit at markets, and have enough euro for a coffee break. If your budget permits, work in a couple of "splurge" meals featuring regional cuisine. Side streets have better bargain restaurants than main tourist drags.
For concerts/cultural events/museums, I think about 20 euro per day should do it, if you have two or three of these expenses per day. Churches are free but may have a charge for visiting the non-worship areas (dome or bell tower climbs, treasuries, crypts).
A weekly bus pass in Roma is 24 euro, if you are spending even 5 days there and plan to use public transportation, this may be a good deal for you, although walking around in January usually is not bad in terms of weather. A vaporetto pass in Venezia might work for you, since single tickets are rather expensive. You can buy a 1, 2 or 3-day pass. Bundle up and cruise the Grand Canal at night and early in the morning.
Best thing to do is visit the museum and concert websites for ticket prices. Sometimes a pass works best, sometimes not.
Souvenirs: you are on your own here, but I like to buy authentic things (made in-country), like scarves, leather goods, etc. Check labels and ask about manufacture.