Don't forget to read my post at the bottom of Page 4, too.
I'm with Esco on this. I have yet to hear of a sprite limit bug in GM, and I frequent GMC quite a bit (never read the higher level posts, though... I just assume they'd be over my head). There are bugs in GM for sure which have been noted, possibly slated to be tackled in GM8.2, but sprites isn't one of them. And to date the only game-breaking bug I've encountered is the image_xscale bug, and that one I've already created a script to partially compensate for.
Now, there have been sprite issues with GM in the past. It seems that in most of those cases, either the person was using MP3s, which sapped GM of its memory, or hundreds and hundreds of what I'm guessing were over-sized sprites (a guy tried to make a trading card game but it said he didn't have enough memory for the sprites, so I'm guessing he used some very high-quality graphics).
So there's basically one of two options for you. If you've prerendered the sprites to 2x or 3x scale, that's just plain retarded and you need to reload the sprites at 1:1 scaling. HD sprites are nice and all, but people tend to go overboard these days. The other option, which Esco mentioned, is keep certain sprites externally.
I also can't help but wonder how you're coding this that you would need so many sprites. Are you using image_xscale to mirror sprites or do you have both left-facing and right-facing sprites? Does Ralph basically use up an entire sprite sheet for all his frames of animation or is he composed of simple sprites pieced together as need be? The Vampire Killer has NEVER been a part of a Belmont's sprite; it has always been a separate sprite (or series of sprites). Are you using separate sprites for masks? Masks are a waste of space since GM8. They may have their place in some games, but they're complete trash in a platformer like Castlevania. Do you have any placeholder sprites, meaning any sprites that don't have an active bounding box? In my Castlevania engine, the stairs all have placeholder sprites, but in my case it's because I'm making a rudimentary user-friendliness in it. Ideally, my stairs would use spriteless objects and just check against relative X and Y coordinates.
The biggest problem I have with GameMaker is it doesn't teach greenhorns how to manage resources. It encourages wasteful spriting. Sprite resource sites like Shyguy Kingdom and Spriters Resource are partially to blame too. They make sprites readily available in sheets, so beginners just take the sheets and rip the sprites directly from the sheets. Or some people who rip sprites on their own - good for them! - use the screen capture method. That's a huge no-no in sprite ripping (although it's sometimes the only feasible way depending on how the ROM was coded). People nowadays, professional programmers too, think, "Oh those old systems had their limitations. We don't have those limitations nowadays so there's no need to break my sprites down like that." People need to learn that sprites are built in code, not in graphics programs. Twenty 16x16 sprites will take up a lot less memory than thirty 48x64 sprites.
Edit: Sorry, there is also the one foreseeable bug that I don't know if anyone's ever encountered. GM assigns and index value to sprites, objects, rooms, timelines, backgrounds, sound files, you name it. If the index is high enough, it may cause issues. I never reached that point, so I don't know if GM has any way of overcoming it.