You can still use MetalKid's calculator and just use Vitamins / Super Training to determine the IVs
without levelling. Enter the stats into the first line on the calculator with the level set to 30. Then give Lati@s / Legendary Pokemon 12 EVs in every stat, enter the new level 30 stats
on the next row down also set to level 30 and include the 12 EVs you just gave the Lati@s / whatever. Repeat adding 12 EVs to every stat and entering the new level 30 data below the last one you did until you get a definitive answer for each IV value, then wipe the EVs with a Reset Bag and you have a completely untouched Pokemon (that holds a lot more trade value) that you know the exact IVs of. You may need to enter more than 5 lines of data so just add more by changing the value in the 'Number of Rows' box. As for applying EVs; Super Training is free but can be tedious (easy if you've got access to level 3 training already), Vitamins are expensive but easy / fast so if you're rolling in cash I would go Vitamins...
edit: added a screenshot of how I did it with my Latias because I felt like my description sucks. I stopped training every stat after 48 because everything was defined except SpD so I added 4 to it a couple of times to determine it