The reason it works different when it is cabled to the lan or wan port is that you are using your router as a wireless switch when it is on the lan port. It does not use any of the router functions.
I am going to assume you use different IP blocks for the network on the the 2 routers. For example 192.168.200.0/24 and 192.168.100.0/24
If you use the same ip's it will get very confused since it thinks the printer is on the local network.
If they are different then it is very strange. Since your linksys thinks the printer is on the internet it should work just like any other address on the internet.
I would see if you can ping the printer from your linksys. It should work. Then ping it from a pc behind the linksys. If it does not work from the linksys itself then I would suspect a issue with the subnet masks on the printer. If it works from the linksys but not a device behind it I would suspect the linksys is blocking the traffic. It is not uncommon to block many of the microsoft filesharing things on routers that have firewall ability.
Your other option is to see if you can avoid running NAT on the linksys. These type of features are getting more common on consumer routers. Using some example ip's. If you had you linksys wan defined as say 192.168.200.99 with a default gate of 192.168.200.1 (your airport). The lan interface would be 192.168.100.1 and give addresses to the end devices out of the 192.168.100.0/24 pool with a gate of 192.168.100.1 This is pretty standard. Now you disable the NAT. Then you go into the airport and put in a static route of 192.168.100.0/24 and with a nexthop of 192.168.200.99. This solution is more for the person who wants to run the printer on the secondary router ie your linksys.
You could also try to swap your linksys and airport routers putting the airport behind the linksys. You could then move the printer to the linksys. Maybe airport is less restrictive and you could print. You could also just use the airport as a switch since you don't have the need to filter. Of course you it would make your linksys filter rules a little more complex since you have to figure out which traffic is coming from where.
I have a home network that consists of two routers. First I have my cable modem that is connected to an Apple Airport Extreme Base Station. I tend to use that as the 'n' network for my computers so any devices using n networking connect to that.
I then have a cable that goes from my Apple Airport Extreme Base Station to a Linksys E3000 router. I tend to use that as my g router and connect many devices that only have g wi-fi to it.
Here is the problem:
Because of a couple children that have iPod Touches and Macbooks I like to have them connect to the E3000 since it has great website blocking. I wish the Apple Base Station had website blocking but as far as I see it doesn't. Also, this website blocking has worked great since I installed the router but here is the problem. They frequently have to print items and they're unable to print since it won't find the printer.
The printer that I have is connected by Ethernet cable to the Apple Base Station. It appears I have two ways of connecting the E3000 router to my Base Station. The way I currently have it connected is the E3000 is connected to the Apple router through the Internet port on the back. By doing this I get full internet and website blocking but I am unable to print through it. Yet if I connect it to the Apple router through one of it's numbered (1-4) ports, I still get internet, I'm able to print, but yet the website blocking does not work.
Since the Apple base station doesn't have website blocking as far as I know the only way I can think of getting around this is to replace my Apple Base Station with another E3000 but I don't want to do this unless I have to.
Is there any way I can either hook up the E3000 to the Apple router or configure the router so that I can have everything I need, internet access, website blocking, but also be able to print through it? Because of the location of the printer I cannot hook up the printer to the E3000.
Thank you for your help.