See Bug 924938, mainly https://bugzilla.redhat.com/show_bug.cgi?id=924938#c19
Since file-5.14, more Perl files are recognized as "Perl5 Module". RPM then treats all "package x;" occurrences in those files as real module definitions and puts them into Provides even when they are in Perl comment.
I think RPM should handle only Provides from files in Perl modules search path. Note that I'm File maintainer, not Perl developer/maintainer.
Limiting by search paths tends to be problematic in various ways, but rpm-18.104.22.168-6.fc20 requires files to have .pm suffix in addition in order to be classified as perl modules which should cure at least the worst of it.