For (3), this page has a lot of links to pattern/motif finding tools. Following through the YMF link on that page, I came across the University of Washington Motif Discovery section. Of these projection seemed to be the only downloadable tool. I find it interesting how old all these tools are; maybe the introduction of microarrays and NGS has made them all redundant.
Your sub-problem (2) seems similar to the problem I'm having with Nippostrongylus brasiliensis genome sequences, where I'd like to find regions of very high homology (length 500bp to 20kb or more, 95-99% similar) that are repeated throughout the genome. These sequences are killing the assembly.
The main way I can find these regions is by looking at a coverage plot of long nanopore reads mapped to the assembled genome (using GraphMap or BWA). Any regions with substantially higher than median coverage are likely to be shared repeats.
I've played around in the past with chopping up the reads to smaller sizes, which works better for hitting smaller repeated regions that are such a small proportion of most reads that they are never mapped to all the repeated locations. I wrote my own script a while back to chop up reads (for a different purpose), which produces a FASTA/FASTQ file where all reads are exactly the same length. For some unknown reason I took the time to document that script "properly" using POD, so here's a short summary:
Converts all sequences in the input FASTA file to the same length.
Sequences shorter than the target length are dropped, and sequences longer
than the target length are split into overlapping subsequences covering
the entire range. This prepares the sequences for use in an
overlap-consensus assembler requiring constant-length sequences (such as
edena).
And here's the syntax:
$ ./normalise_seqlengths.pl -h
Usage:
./normalise_seqlengths.pl <reads.fa> [options]
Options:
-help
Only display this help message
-fraglength
Target fragment length (in base-pairs, default 2000)
-overlap
Minimum overlap length (in base-pairs, default 200)
-short
Keep short sequences (shorter than fraglength)