[Android Software/Hacking General [Developers Only]] tom3q:
I can confirm that on CyanogenMod 7 (Android 2.3.7), /dev/random is barely used, as you can see in the following result of grepping for "/dev/random" all over the source code:

./dalvik/tests/071-dexfile/src/Main.java: * /dev/random never hits EOF, so we're sure that we'll still
./dalvik/tests/071-dexfile/src/Main.java: ProcessBuilder pb = new ProcessBuilder("cat", "/dev/random");
./frameworks/base/services/java/com/android/server/EntropyService.java: * {@code /dev/random} may be in a fairly predictable state. Applications which
./frameworks/base/services/java/com/android/server/EntropyService.java: * depend strongly on randomness may find {@code /dev/random} or
./libcore/luni/src/main/java/org/apache/harmony/security/provider/crypto/SHA1_Data.java: // BEGIN android-changed: /dev/random seems to be empty on Android
./libcore/luni/src/main/java/org/apache/harmony/security/provider/crypto/SHA1_Data.java: static final String DEVICE_NAMES[] = { "/dev/urandom" /*, "/dev/random" */ };
./libcore/luni/src/main/java/org/apache/harmony/security/provider/crypto/RandomBitsSupplier.java: * "/dev/random" depends on which one is available; if both the first is used. <BR>
./libcore/luni/src/main/java/org/apache/harmony/security/provider/crypto/RandomBitsSupplier.java: // the below case should not occur because /dev/random or /dev/urandom is a special file
./bionic/libc/bionic/dlmalloc.c: Causes malloc to use /dev/random to initialize secure magic seed for
./prebuilt/linux-x86/toolchain/arm-linux-androideabi-4.4.x/arm-linux-androideabi/include/c++/4.4.3/arm-linux-androideabi/thumb/bits/c++config.h:/* Define if /dev/random and /dev/urandom are available for the random_device
./prebuilt/linux-x86/toolchain/arm-linux-androideabi-4.4.x/arm-linux-androideabi/include/c++/4.4.3/arm-linux-androideabi/bits/c++config.h:/* Define if /dev/random and /dev/urandom are available for the random_device
./prebuilt/linux-x86/toolchain/arm-linux-androideabi-4.4.x/arm-linux-androideabi/include/c++/4.4.3/arm-linux-androideabi/armv7-a/thumb/bits/c++config.h:/* Define if /dev/random and /dev/urandom are available for the random_device
./prebuilt/linux-x86/toolchain/arm-linux-androideabi-4.4.x/arm-linux-androideabi/include/c++/4.4.3/arm-linux-androideabi/armv7-a/bits/c++config.h:/* Define if /dev/random and /dev/urandom are available for the random_device
./prebuilt/linux-x86/toolchain/i686-linux-glibc2.7-4.4.3/i686-linux/include/c++/4.4.3/i686-linux/bits/c++config.h:/* Define if /dev/random and /dev/urandom are available for the random_device
./prebuilt/linux-x86/toolchain/i686-linux-glibc2.7-4.4.3/sysroot/usr/include/linux/jbd.h:#define JFS_MAGIC_NUMBER 0xc03b3998U /* The first 4 bytes of /dev/random! */
./prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/arm-linux-androideabi/include/c++/4.4.3/arm-linux-androideabi/thumb/bits/c++config.h:/* Define if /dev/random and /dev/urandom are available for the random_device
./prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/arm-linux-androideabi/include/c++/4.4.3/arm-linux-androideabi/bits/c++config.h:/* Define if /dev/random and /dev/urandom are available for the random_device
./prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/arm-linux-androideabi/include/c++/4.4.3/arm-linux-androideabi/armv7-a/thumb/bits/c++config.h:/* Define if /dev/random and /dev/urandom are available for the random_device
./prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/arm-linux-androideabi/include/c++/4.4.3/arm-linux-androideabi/armv7-a/bits/c++config.h:/* Define if /dev/random and /dev/urandom are available for the random_device
./external/dropbear/libtommath/mtest/mtest.c: rng = fopen("/dev/random", "rb");
./external/dropbear/options.h:/* We'll use /dev/urandom by default, since /dev/random is too much hassle.
./external/dropbear/libtomcrypt/src/prngs/rng_get_bytes.c:/* on *NIX read /dev/random */
./external/dropbear/libtomcrypt/src/prngs/rng_get_bytes.c: f = fopen("/dev/random", "rb");
./external/libffi/src/dlmalloc.c: Causes malloc to use /dev/random to initialize secure magic seed for
./external/openssl/crypto/rand/rand_unix.c: * have this. Use /dev/urandom if you can as /dev/random may block
./external/openssl/e_os.h:#define DEVRANDOM "/dev/urandom","/dev/random","/dev/srandom"
./external/e2fsprogs/lib/uuid/gen_uuid.c: fd = open("/dev/random", O_RDONLY | O_NONBLOCK);
./external/e2fsprogs/lib/uuid/gen_uuid.c: * randomness if /dev/random/urandom is out to lunch.
./external/e2fsprogs/lib/ext2fs/kernel-jbd.h:#define JFS_MAGIC_NUMBER 0xc03b3998U /* The first 4 bytes of /dev/random! */
./external/e2fsprogs/lib/ext2fs/jfs_dat.h:#define JFS_MAGIC_NUMBER 0xc03b3998U /* The first 4 bytes of /dev/random! */
./external/sqlite/dist/sqlite3.c:** was obtained from /dev/random. It is used only as a sanity check.
./external/busybox/e2fsprogs/old_e2fsprogs/uuid/gen_uuid.c: fd = open("/dev/random", O_RDONLY | O_NONBLOCK);
./external/busybox/e2fsprogs/old_e2fsprogs/uuid/gen_uuid.c: * randomness if /dev/random/urandom is out to lunch.
./external/busybox/e2fsprogs/old_e2fsprogs/ext2fs/kernel-jbd.h:#define JFS_MAGIC_NUMBER 0xc03b3998U /* The first 4 bytes of /dev/random! */
./external/busybox/e2fsprogs/old_e2fsprogs/ext2fs/jfs_dat.h:#define JFS_MAGIC_NUMBER 0xc03b3998U /* The first 4 bytes of /dev/random! */
./external/qemu/distrib/sdl-1.2.12/src/stdlib/SDL_malloc.c: Causes malloc to use /dev/random to initialize secure magic seed for
./external/ppp/pppd/plugins/radius/sendserver.c: we use /dev/urandom here, as /dev/random might block and we don't
./external/kernel-headers/original/linux/jbd.h:#define JFS_MAGIC_NUMBER 0xc03b3998U /* The first 4 bytes of /dev/random! */

As you can see, all the occurences are either in comments (with /dev/urandom actually used in code) or in rarely used tools (uuid_gen, dropbear, e2fsprogs) or in tests (that aren't part of the ROM).

The command used (in CM7 root directory):

grep -r --include="*.cpp" --include="*.c" --include="*.java" --include="*.h" --include="*.hpp" --exclude="out" --exclude="prebuilt" "/dev/random" .

EDIT:

Maybe the whole secret of this mod is that it generates CPU usage, which keeps CPU frequency at high level, removing the delays needed to scale up the CPU from low frequency (with bad cpufreq governor and/or not well tuned governor parameters), which might be perceived as what you call a "lag". Could you check how much CPU the seeder daemon needs, for example by using top command? You should also be able to monitor cpufreq statistics through /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state file.

EDIT2:

It is not true that /dev/urandom is unsafe. It is safe for most of use cases, even for cryptography. It's unsuitable for use cases requiring high level of randomness like key generation or some scientific calculations (e.g. monte carlo-based simulations).