This is, of course, possible with Drupal.
Drupal Commerce and Ubercart are the two best known shopping modules for Drupal 7 (and both already offer development versions for Drupal 8).
Both support various credit card payment gateways, and both also support the Payment module (a payment API so that not all shopping modules have to implement all the different payment options on their own).
So one of these shopping modules will provide the payment and the shopping cart. The nice thing about these modules is that you don’t have to use their pre-built ways to list the products you sell. You can use the full power of Drupal and all its modules to create the structure you want.
And most likely you’ll want to use the Views module for that. This allows you to list your content in every conceivable way, and you can offer filters and sorting options.
You can also use it for listing your blog/news pages (= "nodes" in Drupal-speak).
Not tedious to maintain, especially when the code is passed to someone else
Using a well-known and popular CMS like Drupal makes sure that you’ll always find people that know their way around.
Just make sure that you follow best practices (i.e., don’t hack core) and document your own custom modules (if you’d need one in the first place; I built several web shops with Drupal without having to code a single line).
If you’re not familiar with Drupal and want to start a shop as fast as possible, have a look at the distribution Commerce Kickstart. It’s Drupal that comes pre-configured with Drupal Commerce and some other modules. I never used this distribtion myself, but I heard good things about it.