How exactly did you try to filter the RIP messages?
RIP uses the 'Prefix Lists' for incoming/outgoing messages, not the 'Filters'.
Note that filtering is done in order of the filters (sort by #). Also take care, the prefix length needs to be matched, too.
e.g. to filter everything from 10.1.1.0/24, you need to set the prefix length to 24-32.
Setting it to 24 will filter only 10.1.1.0. Setting it to 32 will filter only individual hosts (/32).
Also filtering all has to be 0.0.0.0/0 with prefix length 0-32.
An example:
/routing prefix-lists
add action=discard chain=test comment="Discard single host" prefix=10.0.0.1/32 prefix-length=32
add action=discard chain=test comment="Discard a subnet" prefix=10.128.0.0/16 prefix-length=16-32
add chain=test comment="accept single host" prefix=10.1.21.1/32 prefix-length=32
add action=discard chain=test comment="discard another subnet" prefix=10.1.20.0/23 prefix-length=23-32
add chain=test comment="Accept other" prefix=10.0.0.0/8 prefix-length=8-32
add action=discard chain=test comment="Discard the rest"
If you select this list called 'test' as 'In Prefix List' on your RIP interface, it will discard 10.0.0.1, 10.128.0.0/16 and 10.1.20.0/23, and accept 10.1.21.1 (from inside 10.1.20.0/23, it comes before it), accept all other 10.0.0.0/8 and drop everything else...
The same applies on outgoing routes if you use it as 'Out Prefix List'.
But as sri2007 states, OSPF would probably do a better job, and RIP is a little obsolete...