1. Number of rows will be not in CRUD, but in Grid which is part of CRUD. Don't mix these terms please or you can get in trouble with debugging your code. It was the same with me at the beginning :)
2. I have no ready full solution for this, but you have to look into: /lib/DB/dsql/mysql.php method named calc_found_rows() and somehow use SQL_CALC_FOUND_ROWS option to do this.
Something similar is done in Paginator class, setSource method. Check that out!
You have to do something like this (not tested, just pseudo code to give you idea):
$m = $p->add('MyModel');
$m->debug(); // add debug info
$m = $m->_preexec(); // start iterating early
$m->calc_found_rows(); // add SQL_CALC_FOUND_ROWS option
$m = $c->setModel($m); // add model to CRUD
$cnt = count($m);
Probably you should also add check if ($c->grid) { ... only then try to count rows, otherwise it's useless ... }