Единственное существенное отличие состоит в том, что только классы отвечают на "class_eval", тогда как и классы, и экземпляры отвечают на "extended".
Если вы не планируете использовать свой метод с экземплярами объекта, то они эквивалентны, хотя вторая реализация может использоваться для добавления методов экземпляра к определенному экземпляру, а первая - нет.