Yes, hours on end. And yes, wishful thinking.
Normal afternoon rush hour traffic in Baltimore starts around 3:30 and stays heavy till about 6:30. If you pass through the area on I-95 during those hours, you will hit heavy, slow traffic, especially at the Fort McHenry Tunnel toll plaza, which can back up as much as 15 minutes on a normal day.
Dec 23, being a Wednesday this year, will NOT be a normal day - it will be an abnormally HEAVY day. Many people in the area will be taking Dec 24 off work to make a 4-day weekend, whether they get it as a paid holiday or not. The last work day before a 4-day weekend always has an abnormally heavy afternoon rush hour; my guess is that the Ft McHenry toll plaza will back up about 20-25 minutes during the hours you will be passing through, and traffic will move slowly most of the way through the Baltimore area. I've seen it on previous holidays; it ain't pretty.
Traffic on I-95 leading up to and leaving DC on a normal day is a royal PITA and is near-gridlock in several areas. On Dec 23 this year, it will be far worse, and the gridlock will start around 3pm and continue till past 7pm. Avoid DC until after 7pm if you value your sanity!
A large contributor to the problem is that I-95 does not run straight through DC as it does Baltimore; instead, I-95 traffic must follow one side or the other of the Capital Beltway (I-495), which is a huge loop surrounding the entire District. The majority of I-95 through traffic takes the east side, but traffic on the west side is just as heavy, so you save no time or trouble on either side.
Your best option is to NOT pass through either city during the rush hour. I understand wanting to leave home at 2:45 to miss the local rush hour, but as you approach Baltimore around 5pm, you should consider getting off the road for about 2 hours for an early dinner. The malls and stores will be quite busy, but restaurants generally will not be impossible at 5pm, so if you get off of I-95 at Exit 67B (MD 43, White Marsh Blvd), and make the first left onto Honeygo Blvd, you will be in the middle of the White Marsh Towncenter, which extends about 1/2 mile from White Marsh Blvd to Perry Hall Blvd.
Click here for a Bing map of the White Marsh Towncenter area
On the right side of Honeygo, you will see an Ikea, and the
White Marsh Mall, which is home to plenty of mid-range stores, a food court, and a couple of cheap restaurants such as Fudruckers and Ruby Tuesday.
On the left side of Honeygo, you will find three slightly better chain restaurants - TGI Friday's, Red Lobster, and Bertucci's - and the
Avenue At White Marsh. At the Avenue you will find more upscale shopping, a movie theater, Chilis, Don Pablo, Red Brick Station, and several more restaurants. There is also a Coldstone Creamery, if you're into that kind of ice cream (who isn't?)
It should be easy enough to kill two hours in White Marsh before resuming your drive. You may not want to stop, but look at it this way - you can spend two pleasant hours eating, shopping, listening to holiday music, and relaxing, or you can spend those two hours sitting in gridlock traffic on I-95 in Baltimore and I-495 in DC. Stopping for two hours WILL NOT add any time to your overall schedule; you will spend those two hours in Baltimore and DC no matter what. I recommend spending them pleasantly.
MD 301 in southern MD is not much better an option than I-95 these days. The 301 corridor has undergone unbelievable overdevelopment during the last 10 years or so, and the road has not been widened to accommodate the extra traffic. In fact, more and more traffic signals and side streets have been added for all the new housing developments and shopping centers, so traffic moves a lot slower than it did 20 years ago. It's near gridlock during the afternoon rush hour, and the lack of alternative routes makes it a trap if there is a traffic accident that bottles up traffic.
I'd stick to the interstates through central Maryland, where you at least have a few alternative routes if I-95 gets shut down for a major accident (I-95, I-895 and I-695 east or west side to get past Baltimore; MD 295 between Baltimore and DC; and I-495 east or west to get around DC).