Filter widget outputs

The stock “category” widget uses wp_list_categories() and passes the arguments though widget_categories_args in the process.

716                 /**
717                  * Filter the arguments for the Categories widget.
718                  *
719                  * @since 2.8.0
720                  *
721                  * @param array $cat_args An array of Categories widget options.
722                  */
723                 wp_list_categories( apply_filters( 'widget_categories_args', $cat_args ) );

You should probably be able to push through the arguments you need.

The stock archives widget does essentially the same:

374                 /**
375                  * Filter the arguments for the Archives widget.
376                  *
377                  * @since 2.8.0
378                  *
379                  * @see wp_get_archives()
380                  *
381                  * @param array $args An array of Archives option arguments.
382                  */
383                 wp_get_archives( apply_filters( 'widget_archives_args', array(
384                         'type'            => 'monthly',
385                         'show_post_count' => $c
386                 ) ) );

So…

Have any of you found any methods of filtering the widget output?

Yes.

I would be tempted to create my own customized widgets though, rather than try to filter the Core ones.